android.widget.TextView.setTextAlignment():java.lang.NoSuchMethodError

时间:2013-11-20 17:43:08

标签: java android textview adt android-xml

情况:

我有TextView具有属性

android:textAlignment="center"

我正在基于XML布局中的TextView生成另一个TextView,使用克隆,克隆所有基本属性以便按上述方式工作。

问题:

为此,我需要使用此方法:

this.myTextView.setMyTextViewProperty(MyTextView.getMyTextViewProperty());

例如:

this.MyTextView.setText(MyTextView.getText());
  

请注意,this.MyTextView是一个局部变量,MyTextView是在类名下的文件顶部声明的私有var。

我在TextView的所有属性上执行此操作,但是当我从TextAlignment属性中点击以下代码行时...:

this.myTextView.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);

我尝试将其设置为自定义Aligment,而不是从我的XML TextView获取它给我一个错误:

11-20 15:27:04.460: E/AndroidRuntime(9185): FATAL EXCEPTION: main
11-20 15:27:04.460: E/AndroidRuntime(9185): java.lang.NoSuchMethodError: android.widget.TextView.setTextAlignment

但我在 Ctrl + Space 上看到该方法存在,所以我无法理解发生了什么。

第二次尝试是将TextView属性设置为来自TextView的属性:

this.myTextView.setTextAlignment(MyTextView.getTextAlignment());

也没有成功。

Obs:我不想要Android XML Layout解决方案,我想要一个代码解决方案,因为我在TextView

上生成Activity dinamically

我正在使用API​​级别15

任何帮助?

1 个答案:

答案 0 :(得分:17)

setTextAlignment方法是在API级别17中添加的。也许IDE中的编译器大于17,并且您正在测试的设备/模拟器小于此值。这里是link to setTextAlignment

从评论中添加:

对于API等级15及以下,您需要setGravity,每this question