2 myq 26 myq_26 于 2012.10.17 13:51 提问

改变一个TextView在运行时的样式

我想实现在android应用程序上,当用户点击一个TextView时,应用一个已定义的样式。我添加textview setstyle()方法后,样式也不显示。我再用textview.setTextAppearance()。还是没有实现。请问能用什么方法实现呢?

3个回答

zxd_72
zxd_72   2012.10.19 18:02
已采纳

创建一个新的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);
            }
        });
ueryueryuery
ueryueryuery   2012.10.17 15:21

应该使用setstyle()来实现,setTextAppearance()是改变TextView内文字样式的。

请LZ仔细看看自己引用的style是否和原来的不同,不同才有效果嘛。

xiaoyan_12
xiaoyan_12   2012.10.18 17:42
TextView tvCompany = (TextView)findViewById(R.layout.tvCompany);
tvCompany.setTypeface(null,Typeface.BOLD);
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
TextView设置不可见
可见(visible) XML文件:android:visibility="visible" Java代码:view.setVisibility(View.VISIBLE); 不可见(invisible) XML文件:android:visibility="invisible" Java代码:view.setVisibility(View.INVISIBLE); 隐藏(GONE) XML文件:an
动态调整数组的大小
我们在使用数组时,如果设置长了,短了都不太合适,甚至还需要在运行时(或者事先已经定义了长度)改变一个定长数组的大小。在以下的代码中给出注释,请参看!一、定义一个新的数组int [] a = {1, 2, 3, 4, 5}; //假设此时需要改变这个数组大小。 //1.可以设置一个新的数组存放它的数据 ,长度增加为你想要的。 int [] b = new int[6]; b[5] =...
java中代码块和构造器的运行机制
JAVA中代码块和构造器的调用机制 在平常学习中我们经常会碰到代码块和构造器的问题,下面我用一个简单的例子来解释它的运行机制。 我们先建立三个类,它们的关系是 Animal (Brid的父类) | Brid (Eagle的父类) | Eagle 代码如下: ① public class Animal { static{ System.out.pr
final、static、static final修饰的字段赋值的区别
static修饰的字段在类加载过程中的准备阶段被初始化为0或null等默认值,而后在初始化阶段(触发类构造器)才会被赋予代码中设定的值,如果没有设定值,那么它的值就为默认值。final修饰的字段在运行时被初始化(可以直接赋值,也可以在实例构造器中赋值),一旦赋值便不可更改;static final修饰的字段在Javac时生成ConstantValue属性,在类加载的准备阶段根据ConstantVal
Java运行时类型信息
RTTI(Runtime Type Information):运行时类型信息可以在程序运行时发现和使用类型信息。Java在运行时识别对象类型和信息的两种方式: 1.传统的RTTI,假定在编译时就已经知道了所有的类型信息。 2.反射机制:运行时再去检测和使用类的信息。 为什么需要RTTI先看下面这幅图,基类是Shape,派生类是Circle,Square,Triangle,他们都继承了基类的
Java学习笔记——复用类
本文为Java编程思想第四版的学习笔记,在此感谢作者Bruce Eckel给我们带来这样一本经典著作,也感谢该书的翻译及出版人员。本文为原创笔记,转载请注明出处,谢谢。 复用代码是Java众多引人注目的功能之一。但要想成为极具革命性的语言,仅仅能够赋值代码并对之加以改变还是不够的,它还必须能够做更多的事情。此方法的窍门在于使用类而不破坏现有程序代码。读者将会在本章中看到两种打到这一目的的
应该为在运行时可能编辑的任何文本嵌入字体,具有"使用设备字体"设置的文本除外。
今天在cs5里重用一个cs4写的flash时候发现xml载入的字不显示了。报出 “应该为在运行时可能编辑的任何文本嵌入字体,具有"使用设备字体"设置的文本除外。”改了一下字体和xml也没好,后来搜到一篇:原来是抗锯齿的原因。。 引自:http://www.heycode.com/a3659.html 在使用flash cs5的时候,遇到了“应该为在运行时可能编辑的任何文本嵌入字体,具有”使用设
chapter7 -- 复用类
基本内容 组合 继承 代理 总结 1.组合组合:新的类由现有类的对象组成,称之为组合。汽车作为一个整体是由很多零件组成的,包括,车轮,发动机,方向盘等等,每个零件都有自己独特的状态和行为。在Java中,我们处理这种情况,常使用组合的方式。代码如下(仅使用车轮举例):public class Car { private Whell whell; } class Whell{}2.继承继承: 继
使控件在运行时不可见
使控件在运行时不可见http://msdn.microsoft.com/library/chs/default.asp?url=/library/chs/vbcon/html/vbtskmakingyourcontrolinvisibleatruntime.asp有时可能需要创建在运行时不可见的用户控件。例如,除在闹铃响时外,用作闹钟的控件可以不可见。通过设置 Visible 属性很容易做到这
在运行时改变窗体的broadstyle属性
在运行时改变窗体的broadstyle属性 谁用谁知道