【发布时间】:2019-03-12 13:11:52
【问题描述】:
我在 xml 中定义了一个 EditText,我想动态添加另一个,但是当应用程序运行时,动态添加的行为类似于 TextView。我无法输入任何文本,也没有插入符号显示。它甚至不像我静态包含的 EditText。看图。
我有最新的 Android Studio、最新的模拟器,在 API 28 和物理设备三星 S8+ API 26 上进行了尝试,它在任何地方都以同样奇怪的方式工作。最糟糕的是,我确信过去它确实有效。
请问我怎么能找出问题所在?修复它?
代码:
public class TActivity extends AppCompatActivity {
private LinearLayout Layout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.t);
Layout = (LinearLayout) findViewById(R.id.Layout);
EditText Textbox = new EditText(this);
Textbox.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
Textbox.setText("My text");
//Textbox.setEnabled(true);
Layout.addView(Textbox);
}
}
布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/Layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/ThisWorks"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"/>
</LinearLayout>
【问题讨论】:
-
@VijaySinghChouhan 我正在这样做,但它不起作用。
-
尝试使用edit.setEditable(true)
-
@VijaySinghChouhan setEditable 甚至不存在于 API 28 中?我错过了什么吗?
标签: android android-layout android-edittext