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

2020年9月7日 35点热度 0条评论

情况:

我有一个具有属性的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);

我试图将其设置为“自定义条件”,而不是从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


我正在使用API​​级别15

有什么帮助吗?

解决方案如下:

setTextAlignment方法是在API级别17中添加的。也许您在IDE中的编译器高于17,而您正在测试的设备/仿真器却比该级别小。这是link to setTextAlignment

从评论中添加:

对于15级及以下的API,您需要setGravitythis question