当我尝试设置 listAdapter 或适配器(#setListAdapter(), #getListView().setAdapter()
)时,它不显示。当我尝试单独设置 ListView 时,它工作得很好。当我在 #runOnUiThread()
中运行它时,它也不起作用。为什么我的列表没有显示?
以下是我的代码
public class ShopActivity extends ListActivity {
private Intent mainIntent = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.shop);
mainIntent = new Intent(this, MainActivity.class);
String[] items = {"Test"};
ArrayAdapter adapter = new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, items);
//ListView view = (ListView) findViewById(R.id.list);
//view.setAdapter(adapter);
getListView().setAdapter(adapter);
}
public void onBack(View view) {
startActivity(mainIntent);
}
}
编辑:
布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="1">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="450dp"
android:layout_gravity="center_horizontal"
android:layout_centerHorizontal="true"
android:textAllCaps="false"
android:text="@string/button_back"
android:onClick="onBack"
android:id="@+id/back"
/>
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="EMPTY"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="-500dp"/>
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.11"/>
</LinearLayout>
最佳答案
将你的线性布局高度设置为match_parent,并去掉重量,因为它用于比率并且看起来不像你正确使用它。添加 -500 边距并不是正确的方法。将线性布局开始替换为以下内容:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
如果您希望 TextView 位于顶部,请将其添加到按钮之前,然后向按钮添加边距以获得 TextView 的边距。如果您希望后退按钮位于 TextView 旁边,请将它们添加到水平方向的线性布局中,这会将它们并排添加到顶部。
关于java - ListActivity - 列表未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35875653/