Android ListView没有';我一点也不出现
我目前正在学习android开发,并试图让ListView正常工作。但是,ListView甚至没有显示在图形布局和模拟器上。Eclipse也没有发现我的代码中有任何错误,我也不知道为什么它根本没有出现。下面是java类文件(Start.java)和两个xml文件(Start.xml和member\u names\u inflate.xml) Start.javaAndroid ListView没有';我一点也不出现,android,android-listview,Android,Android Listview,我目前正在学习android开发,并试图让ListView正常工作。但是,ListView甚至没有显示在图形布局和模拟器上。Eclipse也没有发现我的代码中有任何错误,我也不知道为什么它根本没有出现。下面是java类文件(Start.java)和两个xml文件(Start.xml和member\u names\u inflate.xml) Start.java public class Start extends ListActivity implements OnClickListener
public class Start extends ListActivity implements OnClickListener
{
private static EditText nameText = null;
private static Button nameAdd = null;
private static final Vector<String> nameContent = new Vector<String>();
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
nameContent.add("Steve");
nameContent.add("Larry");
nameText = (EditText)findViewById(R.id.name);
nameAdd = (Button)findViewById(R.id.add);
nameAdd.setOnClickListener(this);
setListAdapter(new ListViewAdapter(this));
}
private static class ListViewAdapter extends BaseAdapter
{
private LayoutInflater nameInflater;
public ListViewAdapter(Context context)
{
nameInflater = LayoutInflater.from(context);
}
public int getCount()
{
return nameContent.size();
}
public Object getItem(int position)
{
return position;
}
public long getItemId(int position)
{
return position;
}
public View getView(int position, View view, ViewGroup group)
{
ListContent contents;
if(view == null)
{
view = nameInflater.inflate(R.layout.member_names_inflate, null);
contents = new ListContent();
contents.text = (EditText)view.findViewById(R.id.name_first);
contents.text.setCompoundDrawables(view.getResources().getDrawable(R.drawable.bullet), null, null, null);
view.setTag(contents);
}
else
{
contents = (ListContent)view.getTag();
}
contents.text.setText(nameContent.get(position));
return view;
}
static class ListContent
{
TextView text;
}
}
public void onClick(View v)
{
if(v == nameAdd)
{
nameContent.add(nameText.getText().toString());
setListAdapter(new ListViewAdapter(this));
}
}
}
公共类开始扩展ListActivity实现OnClickListener
{
私有静态EditText nameText=null;
私有静态按钮nameAdd=null;
私有静态最终向量nameContent=新向量();
@凌驾
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
名称内容。添加(“史蒂夫”);
名称内容。添加(“拉里”);
nameText=(EditText)findViewById(R.id.name);
nameAdd=(按钮)findviewbyd(R.id.add);
nameAdd.setOnClickListener(这个);
setListAdapter(新ListViewAdapter(this));
}
私有静态类ListViewAdapter扩展了BaseAdapter
{
私用充气机;
公共ListViewAdapter(上下文)
{
nameInflater=LayoutInflater.from(上下文);
}
public int getCount()
{
返回nameContent.size();
}
公共对象getItem(int位置)
{
返回位置;
}
公共长getItemId(int位置)
{
返回位置;
}
公共视图getView(内部位置、视图视图、视图组)
{
列表内容;
如果(视图==null)
{
视图=名称充气器。充气(R.layout.member\u names\u充气,空);
contents=新的ListContent();
contents.text=(EditText)view.findViewById(R.id.name\u优先);
contents.text.setCompoundDrawables(view.getResources().getDrawable(R.drawable.bullet),null,null,null);
view.setTag(内容);
}
其他的
{
contents=(ListContent)view.getTag();
}
contents.text.setText(nameContent.get(position));
返回视图;
}
静态类ListContent
{
文本查看文本;
}
}
公共void onClick(视图v)
{
if(v==nameAdd)
{
添加(nameText.getText().toString());
setListAdapter(新ListViewAdapter(this));
}
}
}
start.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/splash_bg"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:padding="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="20sp"
android:paddingBottom="10dp"
android:textColor="@color/splash_text"
android:text="@string/sub" />
<EditText
android:id="@+id/grp_name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/field1"
android:lines="1" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/members"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:paddingTop="5dp"
android:textColor="@color/splash_text"
android:text="@string/members" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<EditText
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="@string/field2" />
<Button
android:id="@+id/add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/add" />
</LinearLayout>
<ListView
android:id="@android:id/list"
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/inflate_root"
android:background="@color/splash_bg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/inflate_sub"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:layout_width="fill_parent" >
<TextView
android:id="@+id/name_bullet"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bullet" />"
<EditText
android:id="@+id/name_first"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColor="@color/splash_text"
android:inputType="textCapWords"
android:text="@+id/name_first" />
</LinearLayout>
成员名称\u充气.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/splash_bg"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:padding="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/subtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="20sp"
android:paddingBottom="10dp"
android:textColor="@color/splash_text"
android:text="@string/sub" />
<EditText
android:id="@+id/grp_name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/field1"
android:lines="1" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/members"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:paddingTop="5dp"
android:textColor="@color/splash_text"
android:text="@string/members" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<EditText
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="@string/field2" />
<Button
android:id="@+id/add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/add" />
</LinearLayout>
<ListView
android:id="@android:id/list"
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/inflate_root"
android:background="@color/splash_bg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/inflate_sub"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:layout_width="fill_parent" >
<TextView
android:id="@+id/name_bullet"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bullet" />"
<EditText
android:id="@+id/name_first"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textColor="@color/splash_text"
android:inputType="textCapWords"
android:text="@+id/name_first" />
</LinearLayout>
"
我看到的第一个问题是您的第一个嵌套
线性布局
android:layout_height="fill_parent"
试着把它改成
android:layout_height="wrap_content"
你没有空间放其他东西,因为你告诉它占据所有的高度
还要注意的是,fill\u parent
已被弃用,您应该改用match\u parent
。这不是问题,但可能会在将来出现。LinearLayout
默认为水平方向,所以您不需要声明,但这样做没有什么坏处……仅供参考。我刚刚测试了这个并它会在编辑器中显示这些更改。