越来越空值这是我的一个名为Dataadapter_PaidTicket.java我需要隐藏在列表视图按钮,同时用JSON
public class Dataadapter_PaidTicket extends BaseAdapter {
public static String ticket_id;
private final Context context;
public JSONArray values;
public TextView textview;
public TextView textview1;
public TextView textview2;
public TextView textview3;
public TextView textview4;
public Button btn;
public Dataadapter_PaidTicket(Context context, int _resource, JSONArray values) {
// TODO Auto-generated constructor stub
this.context = context;
this.values = values;
}
@Override
public int getCount() {
return values.length();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
try {
return values.get(position);
} catch (JSONException e) {
return e;
}
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 1;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
LayoutInflater inflater = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
ViewHolder holder = new ViewHolder();
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_row_ticket, null);
holder.textview = (TextView) convertView.findViewById(R.id.ticket_name);
holder.textview1 = (TextView) convertView.findViewById(R.id.ticket_start_date);
holder.textview2 = (TextView) convertView.findViewById(R.id.ticket_end_date);
holder.textview3=(TextView)convertView.findViewById(R.id.ticket_price);
holder.textview4=(TextView)convertView.findViewById(R.id.ticket_qty);
holder.btn=(Button)convertView.findViewById(R.id.btn_edit_buy);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
JSONObject temp = null;
try {
temp = (JSONObject) values.get(position);
String title=temp.get("paid_ticket_name").toString();
//String Ctitle = title.substring(0, 10);
holder.textview.setText(title.replace("null", " "));
String tkt_s_date = temp.get("paid_start_sale").toString();
String s_dat e= Constants.formatteddate(tkt_s_date);
holder.textview1.setText(s_date.replace("null", " "));
String tkt_e_date = temp.get("paid_end_sale").toString();
String e_date = Constants.formatteddate(tkt_e_date);
holder.textview2.setText(e_date.replace("null", " "));
String q = temp.get("paid_qty").toString();
holder.textview3.setText(q.replace("0", " "));
String p = temp.get("paid_price").toString();
holder.textview4.setText(p.replace("null", " "));
if (Constants.id.equals(Dataadapter.user_id)) {
holder.btn.setText("EDIT");
} else {
holder.btn.setText("BUY");
}
Log.e("Title",temp.get("paid_ticket_name").toString());
Log.e("Venue",temp.get("paid_description").toString());
Log.e("Date",temp.get("paid_start_sale").toString());
ticket_id = temp.get("id").toString();
Log.e("Ticket ID",ticket_id);
convertView.setId(position);
} catch (JSONException e) {
e.printStackTrace();
}
return convertView;
}
private class ViewHolder {
public TextView textview;
public TextView textview1;
public TextView textview2;
public TextView textview3;
public TextView textview4;
public Button btn;
}
}
这里的java文件,我需要做这样的事情。如果title,s_date,e_date,paid_qty,paid_price的值为空,那么我不想显示按钮(这里是btn)。是否可以隐藏该按钮?我怎样才能做到这一点?
您可以用'holder.btn.setVisibility(View.INVISBLE);'隐藏当然有可能你的按钮 –
。你可以玩简单的条件来实现它。 –
holder.btn.setVisibility(View.INVISBLE); or holder.btn.setVisibility(View.GONE); – kumar