У меня есть действие Фрагмент, чтобы показать детали кампании в виде списка.
Но я хочу диалоговое окно, если я нажму на конкретный макет в этом списке.
Я создаю пользовательский адаптер для просмотра списка.
Во внутренней части представления списка у меня есть несколько макетов (линейные и относительные макеты).
когда я щелкаю этот макет, я не получаю текущие значения представления списка, он показывает следующие значения представления списка.
//ApproveCustomListAdapter
public class ApproveCustomListAdapter extends BaseAdapter {
private Activity activity;
private LayoutInflater inflater;
private List<ApprovedCamp> approvedCampItem;
private ImageLoader imageLoader = MyApplication.getInstance().getImageLoader();
String cbrief,ccampid,ccampname;
ImageView cancel;
TextView campbriefvalue;
FragmentManager fragmentManager;
ApproveCustomListAdapter(Activity activity, List<ApprovedCamp> approvedCampItem) {
this.activity = activity;
this.approvedCampItem = approvedCampItem;
}
@Override
public int getCount() {
return approvedCampItem.size();
}
@Override
public Object getItem(int location) {
return approvedCampItem.get(location);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (inflater == null)
inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = inflater.inflate(R.layout.approvedcamplist, null);
}
if (imageLoader == null)
imageLoader = MyApplication.getInstance().getImageLoader();
NetworkImageView campImg = convertView.findViewById(R.id.campImg);
TextView campid = convertView.findViewById(R.id.campid);
TextView campname = convertView.findViewById(R.id.campname);
TextView status = convertView.findViewById(R.id.campstatus);
TextView approveddate = convertView.findViewById(R.id.approveddate);
TextView campbrief = convertView.findViewById(R.id.campbrief);
LinearLayout camp_brief = convertView.findViewById(R.id.camp_brief);
Button content_value = convertView.findViewById(R.id.content_value);
Button analtyics_value = convertView.findViewById(R.id.analtyics_value);
// // getting campaign data for the row
ApprovedCamp cc = approvedCampItem.get(position);
// // thumbnail image
// getting campaign data for the row
campImg.setImageUrl(cc.getCampImg(), imageLoader);
// //normal values
campid.setText(cc.getCampid());
campname.setText(cc.getCampname());
status.setText(cc.getStatus());
approveddate.setText(cc.getApproveddate());
campbrief.setText(cc.getCampbrief());
cbrief = cc.getCampbrief();
ccampid = cc.getCampid();
ccampname = cc.getCampname();
camp_brief.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Toast.makeText(activity,"linear layout clicked", Toast.LENGTH_LONG).show();
final Dialog dialog = new Dialog(activity);
dialog.setContentView(R.layout.briefview);
dialog.setCancelable(false);
cancel = dialog.findViewById(R.id.close_img);
campbriefvalue = dialog.findViewById(R.id.campbrief);
Log.d("value1 : ",cbrief);
Spanned sp1 = Html.fromHtml( cbrief );
campbriefvalue.setText(sp1);
campbriefvalue.setMovementMethod(LinkMovementMethod.getInstance());
dialog.show();
cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
}
});
return convertView;
}