2012-10-31 107 views
0

我有一个扩展TextView的自定义组件。在构造函数中,我将textSize设置为14.如何在android中为自定义组件设置默认值?

在布局文件中,我尝试将textSize明确设置为20,但该属性的值不起作用。

解决此问题的正确方法是什么?

感谢

代码

public class MyTextView extends TextView { 
    public MyTextView(Context context) { 
     super(context); 
     setTextSize(TypedValue.COMPLEX_UNIT_SP, 14); 
    } 
} 

布局

<package.MyTextView 
    android:text="@string/hello" 
    android:textSize="20sp" /> 
+0

正确的方法是添加您的源代码,以便我们可以看到问题。 – rekire

+0

如果您在构造函数中设置文本大小,那么为什么在xml中指定相同的文本?您创建自定义类的原因是提供一个默认对象,该对象已初始化为您在构造函数中指定的值。所以,只设置你的xml中你没有在你的构造函数中初始化的值。 – rahul

回答

1

检查从构造函数中的XML布局中获得的属性。如果在那里定义了textSize,请不要设置默认的textSize。请参阅docs了解更多信息。

+0

谢谢你的信息:) – gulyan

1

如果您设置TEXTSIZE编程,在XML中值将没有任何效果可言!

相关问题