问题描述
- 改变一个TextView在运行时的样式
- 我想实现在android应用程序上当用户点击一个TextView时应用一个已定义的样式。我添加textview setstyle()方法后样式也不显示。我再用textview.setTextAppearance()。还是没有实现。请问能用什么方法实现呢?
解决方案
创建一个新的XML文件 ""style.xml"":
<?xml version=""1.0"" encoding=""utf-8""?><resources> <style name=""boldText""> <item name=""android:textStyle"">bold|italic</item> <item name=""android:textColor"">#FFFFFF</item> </style> <style name=""normalText""> <item name=""android:textStyle"">normal</item> <item name=""android:textColor"">#C0C0C0</item> </style></resources><color name=""highlightedTextViewColor"">#000088</color><color name=""normalTextViewColor"">#000044</color>myTextView.setOnClickListener(new View.OnClickListener() { public void onClick(View view){ myTextView.setTextAppearance(getApplicationContext() R.style.boldText); myTextView.setBackgroundResource(R.color.highlightedTextViewColor); } });
解决方案二:
TextView tvCompany = (TextView)findViewById(R.layout.tvCompany);tvCompany.setTypeface(nullTypeface.BOLD);
解决方案三:
应该使用setstyle()来实现,setTextAppearance()是改变TextView内文字样式的。
请LZ仔细看看自己引用的style是否和原来的不同,不同才有效果嘛。
时间: 2024-12-21 17:32:58