この例では、セクションヘッダーでListViewを作成する方法を示します。これは、ステップセクションヘッダーxamarin androidでAndroid ListViewを作成するには?私は17のエラーがあります
あなたのリストのヘッダとリスト行 私は17個のエラーを持っていた
あなたの活動にListViewコントロール インスタンス化ListViewコントロールのためのカスタムアダプタを作成するために2つのカスタムレイアウトを作成し、以下が含まれます。私はセクションヘッダーxamarinアンドロイドでlistviewを作成したい。私はJavaからC#
あなたはこれらのような質問のためにXamarinのデベロッパーサイトの "検索" 機能を使用する必要があります> - `public class CustomAdapter:BaseAdapter`->does not implement abstract member `android.widget.baseAdapter.getitem(int)`
> - `Android.Widget.BaseAdapter.NotifyDataSetChanged()`-> An object reference is requered to access non-static member .....
> - `return mData.GetRange(position)`;-> no overload for method 'getrange'take 1 arguments
> - `convertView = mInflater.Inflate(Resource.Layout.textViewHeaderItems, false)`;-> the
> best overloaded method match for ..... has some invalid arguments
> - `convertView.SetTag(holder);`-> no overload for method ... tkae 2 arguments
> - `holder.textView.SetText(mData.get(position))`; type system.collection.generic.list<string> does not contain a defintion
> for 'get'and no extension method 'get'of type
> `system.Colleciton.Generic.List<string>` could be found. Are you
> missing an assembly
public class CustomAdapter:BaseAdapter
\t \t {
\t \t \t private const int TYPE_ITEM = 0;
\t \t \t private const int TYPE_SEPARATOR = 1;
\t \t \t private List<String> mData = new List<String>();
\t \t \t private TreeSet sectionHeader = new TreeSet();
\t \t \t private LayoutInflater mInflater;
\t \t \t public CustomAdapter(Context context) {
\t \t \t \t mInflater = (LayoutInflater) context
\t \t \t \t \t .GetSystemService(Context.LayoutInflaterService);
\t \t \t }
\t \t \t public void addItem(String item) {
\t \t \t \t mData.Add(item);
\t \t \t \t Android.Widget.BaseAdapter.NotifyDataSetChanged();
\t \t \t }
\t \t \t public void addSectionHeaderItem(String item) {
\t \t \t \t mData.Add(item);
\t \t \t \t sectionHeader.Add(mData.Count - 1);
\t \t \t \t Android.Widget.BaseAdapter.NotifyDataSetChanged();
\t \t \t }
\t \t
\t \t \t public int getItemViewType(int position) {
\t \t \t \t return sectionHeader.Contains(position) ? TYPE_SEPARATOR : TYPE_ITEM;
\t \t \t }
\t
\t \t \t public int getViewTypeCount() {
\t \t \t \t return 2;
\t \t \t }
\t
\t \t \t public int getCount() {
\t \t \t \t return mData.Count;
\t \t \t }
\t \t
\t \t \t public String getItem(int position) {
\t \t \t \t return mData.GetRange(position);
\t \t \t }
\t \t
\t \t \t public long getItemId(int position) {
\t \t \t \t return position;
\t \t \t }
\t \t \t public View getView(int position, View convertView, ViewGroup parent) {
\t \t \t \t ViewHolder holder = null;
\t \t \t \t int rowType = getItemViewType(position);
\t \t \t \t if (convertView == null) {
\t \t \t \t \t holder = new ViewHolder();
\t \t \t \t \t switch (rowType) {
\t \t \t \t \t case TYPE_ITEM:
\t \t \t \t \t \t convertView = mInflater.Inflate(Resource.Layout.textViewHeaderItems, false);
\t \t \t \t \t \t holder.textView = (TextView) convertView.FindViewById(Resource.Id.textviewHeaderItems);
\t \t \t \t \t \t break;
\t \t \t \t \t case TYPE_SEPARATOR:
\t \t \t \t \t \t convertView = mInflater.Inflate(Resource.Layout.textViewItemsSeparator, false);
\t \t \t \t \t \t holder.textView = (TextView) convertView.FindViewById(Resource.Id.textviewItemsSeparator);
\t \t \t \t \t \t break;
\t \t \t \t \t }
\t \t \t \t \t convertView.SetTag(holder);
\t \t \t \t } else {
\t \t \t \t \t holder = (ViewHolder) convertView.GetTag();
\t \t \t \t }
\t \t \t \t holder.textView.SetText(mData.get(position));
\t \t \t \t return convertView;
\t \t \t }
\t \t \t public class ViewHolder {
\t \t \t \t public TextView textView;
\t \t \t }
\t \t }
私たち「検索」結果を表示することができますが、多くの情報があります。私は分かりません –
treesetを使用することはできません<> –
私のポストを更新しました。どうぞ宜しくお願い致します –