java - EditText 不显示文本

标签 java android android-layout listview android-edittext

带有 listviewButtonEditText 的字典应用程序。 EditText 在第一次点击时在真实设备中显示键盘,但它不显示单词和 然后它就不会再出现了。 我多次尝试寻找堆栈溢出的解决方案,但没有一个对我有用。 谁能帮忙?

提前致谢。

public class MainActivity extends AppCompatActivity {
private ListView listView;
List<WordTranslation> quotes;
Button searchBtn;
EditText editText;
DatabaseAccess databaseAccess;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
        return super.onCreateOptionsMenu(menu);

}


@Override
protected void onStart() {
    super.onStart();
    AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);
    AlertDialog alert = alertDialog.show();
    alert.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    return super.onOptionsItemSelected(item);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    searchBtn = (Button) findViewById(R.id.button);
    editText = (EditText) findViewById(R.id.EditText);
    editText.setFocusableInTouchMode(true);
    editText.requestFocus();
    searchBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        String word=    editText.getText().toString();
            databaseAccess.getwordtranslation(word);
        }
    });


    this.listView = (ListView) findViewById(R.id.ListView);
    final DatabaseAccess databaseAccess = DatabaseAccess.getInstance(this);
    databaseAccess.open();
    databaseAccess.getQuotes();
    quotes = databaseAccess.ShowDictionaryDetails();
    databaseAccess.close();

    ArrayAdapter<String> adapter = new Adapter(this, R.layout.activity_list_view_item, quotes);
    listView.setAdapter(adapter);
    }

xml文件

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.future.DictionaryEdition.MainActivity"
android:focusableInTouchMode="true">



<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/line2"
    android:layout_below="@+id/line1">


    <ListView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/ListView">


    </ListView>

</LinearLayout>


<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:focusable="True"
    android:focusableInTouchMode="true"
    android:id="@+id/line1">
    <!--android:layout_alignRight="@+id/line3">-->


    <!--<SearchView-->
    <!--android:layout_width="match_parent"-->
    <!--android:layout_height="match_parent"-->
    <!--android:layout_weight="1"-->
    <!--android:id="@+id/search_view"/>-->


    <EditText
        android:hint="@string/search_word_here"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/EditText"
        android:focusable="True"
        android:focusableInTouchMode="true"
        android:layout_weight="3"
        android:textColor="@color/colorAccent"
        android:inputType="text" />


    <Button
        android:text="@string/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button"
        android:layout_weight="1" />
</LinearLayout> </RelativeLayout>

最佳答案

因为正如您在 xml 文件中看到的那样,您在 android:text 字段中没有写入任何内容。所以它没有给你任何东西。所以改变它。

<EditText
        android:text="balabalbla"
        android:hint="@string/search_word_here"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/EditText"
        android:focusable="True"
        android:focusableInTouchMode="true"
        android:layout_weight="3"
        android:inputType="text" />

然后在 android:text="baablaabla" 上写点东西

关于java - EditText 不显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40189362/

相关文章:

java - 如何使用 Android 更新 Firestore 中的数组元素?

java - Java 泛型和集合的问题

android - ScrollView 不显示 LinearLayout 的所有元素

android - 获得 visibility=gone 的 View 的高度

android - 使用 LayoutInflator 的膨胀方法时的不同结果

java - JCE-Java 7...?

java - HTMLUNIT v. 2.15 Bug 线程死锁

java - json 数组遇到问题

android - FCM(Firebase Cloud Messaging)发送到多个设备组

android - 按下时如何更改图像大小