ListView 未出现在 Emulator Android Studio 中
Posted
技术标签:
【中文标题】ListView 未出现在 Emulator Android Studio 中【英文标题】:ListView doesn't apear in Emulator AndroidStudio 【发布时间】: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_
android:layout_
android:orientation="vertical"
>
<TextView
android:id="@+id/textSexe"
android:layout_
android:layout_
android:text="@string/quel_est_votre_sexe" />
<Space
android:layout_
android:layout_
/>
<!-- On choisit le mode de sélection avec android:choiceMode -->
<ListView
android:id="@+id/listSexe"
android:layout_
android:layout_
android:choiceMode="singleChoice"></ListView>
<Button
android:id="@+id/send"
android:layout_
android:layout_
android:layout_gravity="center"
android:text="Envoyer" />
</LinearLayout>
我得到以下信息
【问题讨论】:
ListView 需要一个已知的高度。尝试使用“200dp”而不是“wrap_content” 你能提供你的适配器的代码吗? @emandt 即使已知高度也不会显示。 @MaximeClaude,我没有实现任何适配器。我正在使用 android studio 提供的 bit-in 适配器 【参考方案1】:您没有为每个列表项使用正确的layout
。
改用mListSexe.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, mSexes));
。
【讨论】:
以上是关于ListView 未出现在 Emulator Android Studio 中的主要内容,如果未能解决你的问题,请参考以下文章
ListView 未显示/出现 android studio
[Debug] Use Remote Sources to Debug a Web App on an Emulator, Simulator, or Physical Device