首页 > 其他分享 >关于Android 控件没有动态设置界面效果时,如何处理

关于Android 控件没有动态设置界面效果时,如何处理

时间:2023-07-20 15:13:48浏览次数:37  
标签:控件 界面 printStackTrace 设置 Android 动态 drawable

关于Android 控件没有动态设置界面效果时,如何处理

例子:android:scrollbarThumbVertical 动态设置 -->listView

如果控件只有静态xml界面的设置,没有动态设置时,需要去查看安卓控件的源码,看该控件继承了那个父控件的方法,然后利用反射调用!
不同的Android 版本,源码可能不同!

Android 11.0

View.java

 /**
     * Defines the vertical scrollbar thumb drawable
     * @attr ref android.R.styleable#View_scrollbarThumbVertical
     *
     * @see #awakenScrollBars(int)
     * @see #isVerticalScrollBarEnabled()
     * @see #setVerticalScrollBarEnabled(boolean)
     */
    public void setVerticalScrollbarThumbDrawable(@Nullable Drawable drawable) {
        initializeScrollBarDrawable();
        mScrollCache.scrollBar.setVerticalThumbDrawable(drawable);
    }


<ListView
        android:id="@+id/list"
        android:layout_width="wrap_content"
        android:layout_height="250dp"
        android:entries="@array/array_adapter_strs" />

//ListView 动态改变scrollbarThumbVertical
private void changeViewProgress(){
        try {
            Class three = Class.forName("android.view.View");
            Method method_2 = three.getMethod("setVerticalScrollbarThumbDrawable", Drawable.class);
            method_2.invoke(listView,getDrawable(R.drawable.title_music));
        } catch (ClassNotFoundException | NoSuchMethodException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }

参考链接:
动态设置
java反射

标签:控件,界面,printStackTrace,设置,Android,动态,drawable
From: https://www.cnblogs.com/kato-T/p/17568457.html

相关文章

  • Android使用MD5加密
    codepackagecom.jay.common;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.InputStream;importjava.security.MessageDigest;importjava.security.NoSuchAlgorithmExcep......
  • DevExpress WinForms TreeList控件,让业务数据展示更清晰!(二)
    DevExpressWinForms的TreeList控件是一个功能齐全、数据感知的TreeView-ListView的混合体,它可以以树形、网格或两者结合的形式显示数据信息。无论是数据绑定模式还是非绑定模式,都具有完整的数据编辑支持。在上文中(点击这里回顾>>),我们为大家介绍了TreeListUI/UX的自定义、受Exce......
  • AndroidDeveloper Weekly No.1
    好文HermesEventBus-饿了么开源的Android跨进程事件分发框架Android开发你需要了解的Gradle配置Android自定义view详解GoogleI/O2016笔记:APK瘦身的正确姿势AndroidVector曲折的兼容之路深入浅出RecyclerView优秀开源项目Music-Player一款UI效果很棒的开源音乐播放器,做音......
  • 技术沙龙 | Android应用之插件化
    有印象的同学们应该知道我在今年的4月份举办了一场上海Android开发者聚会,具体可以见这几篇文章:当时规模浩大,邀请的演讲嘉宾都是一些热爱分享、大家耳熟能详的一些技术大牛,如大头鬼,胡凯,MarkZhai,吉鑫,光景等,而且捧场的还有医生、张涛、lightsky等大家熟知的ID,最后反响也很不错。举办这......
  • Android 8.0 Oreo 来啦!
    阅读文本大概需要2分钟。今天一大早,朋友就发给我这么一张图片:卧槽,原来Android8.0真的叫Oreo啊,这个真的有点没想到,这应该是跟奥利奥达成的合作,毕竟之前也是有过先例的,还记得当年Android4.4KitKat么?就是跟雀巢的合作,之后雀巢的KitKat饼干上都印上了Android小机器人。......
  • Android 妙用TextView实现左边文字,右边图片
    原文:Android妙用TextView实现左边文字,右边图片-Stars-One的杂货小窝有时候,需要文字在左边,右边有个箭头,我个人之前会有两种做法:使用线性布局来实现或者使用约束布局,一个左对齐,一个右对齐这几天突然想到是否可以使用TextView的设置图标的方式实现,研究发现确实可......
  • 更改android studio sdk 下载
    更改AndroidStudioSDK下载路径配置在使用AndroidStudio开发Android应用时,我们经常需要下载和更新AndroidSDK以获取最新的开发工具和资源。默认情况下,AndroidStudio会将SDK下载到用户主目录下的一个隐藏文件夹中。然而,有时我们可能希望将SDK下载到其他位置,比如一个更大的磁盘......
  • 使用fossa工具扫描Android配置
    使用fossa工具扫描Android配置教程作为一名经验丰富的开发者,你可以帮助那些刚入行的小白们解决问题和指导他们。这篇文章将教会你如何使用fossa工具来扫描Android配置。让我们一起来看看整个流程吧!整个流程以下是使用fossa工具扫描Android配置的步骤。我们将使用表格来展示每个......
  • Android GO 版本源码中preferred network type显示
    AndroidGO版本源码中preferrednetworktype的显示作为一名经验丰富的开发者,我将向你解释如何在AndroidGO版本的源码中实现"preferrednetworktype"的显示。下面是实现这个功能的步骤:步骤概览步骤动作步骤1创建一个新的Android项目步骤2添加必要的权限步骤......
  • Android Chart
    AndroidChartAndroidChart是一个用于在Android应用程序中显示图表的开源库。它提供了各种类型的图表,包括折线图、柱状图、饼图等。这些图表可以帮助开发人员将复杂的数据可视化,使用户更容易理解和分析数据。安装AndroidChart库首先,我们需要在项目的build.gradle文件中添加以......