Android:ArrayAdapter仅显示一项,即使ListView不是';t放置在滚动视图中
我对Android编程还不熟悉。我遇到一个问题,我需要在列表视图中打印三个项目,但只得到一个项目。在许多回答中,我看到ListView不应该放在ScrollView中,我已经重新检查了我的代码,这实际上不是问题所在Android:ArrayAdapter仅显示一项,即使ListView不是';t放置在滚动视图中,android,listview,android-arrayadapter,Android,Listview,Android Arrayadapter,我对Android编程还不熟悉。我遇到一个问题,我需要在列表视图中打印三个项目,但只得到一个项目。在许多回答中,我看到ListView不应该放在ScrollView中,我已经重新检查了我的代码,这实际上不是问题所在 package com.apress.gerber.reminder; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAda
package com.apress.gerber.reminder;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class RemindersActivity extends AppCompatActivity {
private ListView mListView;
private String records[] = {"first record", "second record", "third record"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reminders);
mListView = (ListView) findViewById(R.id.reminders_list_view);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
this,
R.layout.reminders_row,
R.id.row_text,
records);
mListView.setAdapter(arrayAdapter);
}
}
package com.apress.gerber.rementer;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
公共类提醒活动扩展了AppCompatActivity{
私有列表视图;
私有字符串记录[]={“第一条记录”、“第二条记录”、“第三条记录”};
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u提醒);
mListView=(ListView)findViewById(R.id.Memorients\u list\u视图);
ArrayAdapter ArrayAdapter=新的ArrayAdapter(
这
R.布局、提醒,
R.id.row_文本,
记录);
setAdapter(arrayAdapter);
}
}
Xml文件:-
提醒_row.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="50dp"
android:orientation="vertical">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="48dp">
<view
android:id="@+id/row_tab"
class="android.view.View"
android:layout_width="10dp"
android:layout_height="match_parent"
android:background="@android:color/holo_green_light"
/>
<TextView
android:id="@+id/row_text"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="@string/reminder"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@android:color/white"
android:textSize="18sp"
android:layout_gravity="center_vertical"
android:padding="10dp"
android:ellipsize="end"
android:maxLines="1"/>
</LinearLayout>
</LinearLayout>
activity_remementers.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:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.apress.gerber.reminder.RemindersActivity">
<ListView
android:id="@+id/reminders_list_view"
android:layout_width="373dp"
android:layout_height="50dp"
android:background="@color/dark_grey"
tools:layout_editor_absoluteX="8dp"
tools:layout_editor_absoluteY="8dp"
tools:listitem="@layout/reminders_row"/>
</RelativeLayout>
究竟发生了什么错误 如果您不打算使用
ArrayAdapter
扩展您的类并自定义getView
方法,但您想使用自定义布局,则TextView
必须具有idandroid:id=“@android:id/text1”
或者您可以使用android.R.layout。简单列表\u项\u 1
在您的ArrayAdapter中,如:
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
this,
android.R.layout.simple_list_item_1,
records);
mListView.setAdapter(arrayAdapter);
如果您不打算使用
ArrayAdapter
扩展您的类并自定义getView
方法,但您想使用自定义布局,则TextView
必须具有idandroid:id=“@android:id/text1”
或者您可以使用android.R.layout。简单列表\u项\u 1
在您的ArrayAdapter中,如:
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
this,
android.R.layout.simple_list_item_1,
records);
mListView.setAdapter(arrayAdapter);
谢谢我犯了一个非常愚蠢的错误,ListView,我听不懂。谢谢。。我犯了一个非常愚蠢的错误,ListView,我没能抓住它。