【发布时间】:2021-06-19 06:50:20
【问题描述】:
我是 Android Studio 的新手;我正在关注一个教程,我正在尝试执行以下代码。执行不报告任何错误;但是,ListView 没有显示在模拟器中。 您能告诉我如何解决这个问题吗?
我的主要活动文件是: SelectionMultipleActivity.java
package com.example.tutolist;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;
public class SelectionMultipleActivity extends Activity {
private ListView mListSexe = null;
private Button mSend = null;
private String[] mSexes = {"Masculin", "Feminin"};
private String[] mLangages = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListSexe = findViewById(R.id.listSexe);
mSend = findViewById(R.id.send);
mLangages = new String[]{"C", "Java", "COBOL", "Perl"};
mListSexe.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_single_choice, mSexes));
mListSexe.setItemChecked(0, true);
mSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(SelectionMultipleActivity.this, "Merci ! Les données ont été envoyées !", Toast.LENGTH_LONG).show();
mListSexe.setChoiceMode(ListView.CHOICE_MODE_NONE);
mListSexe.setAdapter(new ArrayAdapter<String>(SelectionMultipleActivity.this, android.R.layout.simple_list_item_1,
mSexes));
mSend.setEnabled(false);
}
});
}
}
我的布局文件是: activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<TextView
android:id="@+id/textSexe"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/quel_est_votre_sexe" />
<Space
android:layout_width="match_parent"
android:layout_height="10dp"
/>
<!-- On choisit le mode de sélection avec android:choiceMode -->
<ListView
android:id="@+id/listSexe"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:choiceMode="singleChoice"></ListView>
<Button
android:id="@+id/send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Envoyer" />
</LinearLayout>
【问题讨论】:
-
ListView 需要一个已知的高度。尝试使用“200dp”而不是“wrap_content”
-
你能提供你的适配器的代码吗?
-
@emandt 即使已知高度也不会显示。
-
@MaximeClaude,我没有实现任何适配器。我正在使用 android studio 提供的 bit-in 适配器
标签: android android-studio listview android-emulator adapter