Xamarin:Java.Lang.RuntimeExcepiton:You content must hava a listview whose id attribute is 'android.R.id.lis' (简单解决方案,不谈原理)
Java.Lang.RuntimeExcepiton:You content must hava a listview whose id attribute is 'android.R.id.lis'
继承了LiseActivity,但是却没有ListView的标签,网上有说过只要在布局文件中添加如下代码即可:
<ListView
android:id="@android:id/list" 或android:id="@id/android:list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
ArrayAdapterListView:逻辑代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
namespace App2
{
[Activity(Label = "ArrayAdapterListView")]
public class ArrayAdapterListView : ListActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.ArrayAdapterListView);
// Create your application here
//ArrayAdapter使用的步骤
//1、定义一个序列来存放ListView中item的内容。
List<string> orderList=new List<string>()
{
"订单编号:43547517",
"订单状态:订单取消",
"预定时间:2016/05/10",
"预定金额:380",
"酒店名称:7天假日商务酒店",
"酒店地址:北京市朝阳区"
};
//2、通过实现ArrayAdapter的构造函数来创建一个ArrayAdatper的对象。
//3、通过ListView的Adapter属性绑定ArrayAdatpter 由于ArrayAdapterListView是继承于ListActivity所以有ListAdapter属性
this.ListAdapter=new ArrayAdapter(this,Android.Resource.Layout.SimpleListItem1,orderList);
}
}
}
ArrayAdapterListView.axml:界面布局
<?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="match_parent"
android:minWidth="25px"
android:minHeight="25px">
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
<!--或android:id="@id/android:list"-->
</LinearLayout>
结果:
将:SetContentView(Resource.Layout.ArrayAdapterListView); 删除……啥毛病没有~!O(∩_∩)O哈哈~~!