问题描述
我是 Android Studio 的新手;我正在关注 tuto,我正在尝试执行以下代码。执行没有报告任何错误;但是,ListView 没有显示在模拟器中。 你能告诉我如何解决这个问题吗?
我的主要活动文件是: 选择MultipleActivity.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);
}
});
}
}
我的布局文件是: 活动_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>
解决方法
您没有为每个列表项使用正确的 layout
。
改用mListSexe.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,mSexes));
。