簡體   English   中英

列表視圖中的其他按鈕

[英]Different Button in List view

我有兩個ArrayList,分別是“一個”和“兩個” [“兩個”始終是“一個”的子集],並且我有一個由Arraylist“一個”填充的列表視圖。 現在正在檢查條件,如果“一個”中存在“兩個”元素,則在列表視圖中設置ImageButton,如果沒有,則在列表視圖中設置ImageButton。 下面是我的getView方法。 任何幫助或關鍵字將不勝感激。

 @Override
public View getView(final int position, View convertView, ViewGroup parent) {
    ViewHolder viewHolder;
    if (convertView == null) {
        LayoutInflater inflater = LayoutInflater.from(context);
         //HERE HOW TO SWITCH TWO LAYOUTS.. 
        convertView = inflater.inflate(R.layout.invite_row, null);
        viewHolder = new ViewHolder();
        viewHolder.name = (TextView)convertView.findViewById(R.id.textView6);
        viewHolder.text = (TextView) convertView.findViewById(R.id.childTextView);
        viewHolder.button = (Button) convertView
                .findViewById(R.id.childButton);
        Typeface typeFace= Typeface.createFromAsset(context.getAssets(), "fonts/Roboto-Bold.ttf");
        viewHolder.name.setTypeface(typeFace);
        //      viewHolder.button.setBackgroundResource(R.drawable.invitebuttonbackground);
        convertView.setTag(viewHolder);
    } else {
        viewHolder = (ViewHolder) convertView.getTag();
    }


    final String temp = getItem(position);


   final String tempname = getItem(position);
    viewHolder.name.setText(tempname);
    viewHolder.button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (customListner != null) {
                customListner.onButtonClickListner(position, temp, tempname);

            }

        }
    });

    return convertView;
}

你可以做的一件事是

View convertView;
if (whatever condition) {
  convertView = inflater.inflate(R.layout.invite_row, null);
} else {
  convertView = inflater.inflate(R.layout.invite_row_two, null);
}

如果您可以發布您的布局,我將對您想做的事情一無所知。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM