比如没有ActionBar的Activity中,定义如下的样式
<style name="AppTheme" parent="android:ThemeLight">
<!-- 不要ActionBar -->
<item name="android:windowActionBar">false</item>
<item name="android:windowTitleStyle">@style/WindowTitle</item>
</style>
<style name="WindowTitle" parent="@android:style/TextAppearance">
<item name="android:textColor">#fff</item>
<item name="android:textSize">20sp</item>
<item name="android:textStyle">bold</item>
</style>
如果是在ActionBar存在的前提下,主题样式要如下
<style name="AppTheme" parent="android:ThemeLight">
<!-- 这个是设置ActionBar上的menu的文本显示样式-->
<item name="android:actionMenuTextAppearance">@style/TextAppearance</item>
<!-- 这个是设置ActionBar上的menu的文本显示颜色-->
<item name="android:actionMenuTextColor">@color/main_color</item>
<item name="android:actionBarStyle">@style/ActionBar</item>
</style>
<style name="ActionBar" parent="@android:style/WidgetActionBar">
<!-- 这个是设置ActionBar上的title的文本显示样式-->
<item name="android:titleTextStyle">@style/TextAppearance</item>
</style>您好,很高兴能帮助您
我说下思路吧不清楚你每一个item放的数据是不是封装好的一个对象,如果是,那么就在这个对象的类中添加一个变量,用于标识是否被点击的。如果没有,那么你就写一个数组,来一一对应item。好了,有了上面数据的支撑就好办事了。1,首先,你得给你的adapter方法写一个public 方法,这个方法用来修改标识点击变量的。由于你的点击是互斥的,比较笨的方法是遍历你的展示数据,首先将点击状态修改为未点击状态。然后再将点击的项目设置为点击状态。我能想到的是呢 在adapter中设置一个成员变量,用于保存上一次点击的项目的position,就不用再去遍历了。2在getview中,凡是标识点击的变量是被点击的状态 那么就改变字体颜色。否则变为常规颜色。这里要说一个容易疏忽的地方:变量处于没有点击的状态,你也要去设置字体的颜色,为什么呢,这里很有可能就是上一次点击的item,需要把颜色修正过来3,在onItemClick里面调用上面的方法,记住要把position带过去哦。完成!哦也! 至于你用selector不起作用,这个我不是很清楚,有可能是你的selector不起作用,或者item得不到焦点,然后selector都不会被触发 或者根本就不能用我没这么用过。还有跳转的时候,会不会调用getview 这个我也不知道 没有去试过呢,我猜测不会,前提是你没有finish列表界面,否则重新加载 必须要走这个方法的呀 查看原帖>>
你的采纳是我前进的动力,
记得好评和采纳,答题不易,互相帮助,Android开发中,经常需要实现下图状态栏的效果,类似于沉浸式状态栏,但这里仅仅是讨论设置状态栏的颜色和状态栏上面文字、图标的颜色的方法。
Android 44(API 19)之后,就提供了修改状态栏颜色的方法,但是在 Android 60(API 23)之后,才支持修改状态栏上面的文字和图标颜色,默认是白色的。所以会导致一个问题,在 44 到 60 之间的系统,状态栏设置为浅色的话,状态栏上面白色的文字和图标会看不清,像下面这样:
有一些第三方的系统提供了设置状态栏和状态栏文字、图标颜色的方法,比如小米的MIUI和魅族的Flyme,所以考虑了下比较好的实现方式是:
当然,这里面也会有坑,比如 MIUI 提供的修改状态栏字体颜色方法会跟 Android 系统自带的方法冲突,官方说明如下: 关于MIUI状态栏字符颜色逻辑调整说明
经过网上的资料和自己的尝试,MIUI 系统还是同时使用 MIUI 提供的方法和 Android 系统自带的方法来修改状态栏字体颜色比较保险。
基于上面的思考,封装了设置 Android 44 以上系统状态栏颜色和状态栏字体、图标颜色的方法:
要在 Application Theme 加上 <item name="android:fitsSystemWindows">true</item> ,不然页面会顶到状态栏上面,或者在 Activity 的布局里面加上 android:fitsSystemWindows="true" 和 android:clipToPadding="false" 也可以。
最终实现的效果如下:
大家有更好的方案可以告诉我~1、创建一个fragmentxml布局文件,在里面添加一个ListView控件。
2、由于List里面既要呈现,也要呈现文字,所以再创建一个fragment_itemxml布局文件,在里面添加ImageView、TextView,用来显示和文字。
3、使用SimpleAdapter来绑定数据保存和文字即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)