i tried many things but didn't get any solution, i m setting text at runtime and i need the width of popup according to text size LinearLayout viewGroup = (LinearLayout) ((Activity) context) .findViewById(R.id.popup);
LayoutInflater layoutInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layout = layoutInflater.inflate(R.layout.popup_layout, viewGroup);
title_tv = (TextView) layout.findViewById(R.id.popup_txt);
title_tv.setText(title_P);
PopupWindow popup = new PopupWindow(context);
final float SCALE = layout.getResources().getDisplayMetrics().density;
int mode = MeasureSpec.getMode(View.MeasureSpec.UNSPECIFIED);
int measuredWidth = MeasureSpec.getSize(View.MeasureSpec.UNSPECIFIED);
popup.setWidth(measuredWidth);
popup.setHeight(60);
popup.setContentView(layout);
//popup.setWindowLayoutMode();
popup.setFocusable(true);
Use:
popup.setWidth(WindowManager.LayoutParams.WRAP_CONTENT);
plus, if applicable:
popup.setHeight(WindowManager.LayoutParams.WRAP_CONTENT);
However, make sure you're not using fill/match_parent in the contents of popup_layout, because that wouldn't make sense (i.e. popup set to wrap its content, and the content says make me as big as my parent). Post your popup_layout XML for a more exact answer.