我在app上工作,我必须在我的主Activity中显示Popup,在Pop中我有一个Button,我需要在其上执行一些操作。
请看下面的代码。该代码没有给出任何错误,但弹出窗口的按钮单击不起作用。
imgOpenPopup = (ImageView) findViewById(R.id.places);
imgOpenPopup.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
LayoutInflater inflater = (LayoutInflater) ConvergeActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam));
popupWindow = new PopupWindow(inflater.inflate(
R.layout.placepopup, null, false), 200, 265, true);
popupWindow.showAtLocation(findViewById(R.id.places),
Gravity.CENTER, 0, 0);
objbtnpopupOk=(Button)popupView.findViewById(R.id.btnokpopup);
objbtnpopupOk.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Toast.makeText(getApplicationContext(), " hi thrtrt " ,Toast.LENGTH_LONG).show();
}
});
}
});
答案 0 :(得分:3)
试试这个:
View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam));
popupWindow = new PopupWindow(popupView, 200, 265, true);
而不是这个:
View popupView = inflater.inflate(R.layout.placepopup,(ViewGroup)findViewById(R.layout.maincam));
popupWindow = new PopupWindow(inflater.inflate(R.layout.placepopup, null, false), 200, 265, true);
答案 1 :(得分:3)
我真的不知道出了什么问题但this solution为我解决了。
欢呼声。
答案 2 :(得分:0)
尝试从OnClickListener中取出弹出窗口的创建,并在onClick中调用方法以显示弹出窗口。它几乎没有优化改进,它可以解决您的问题。
答案 3 :(得分:0)
为什么不尝试使用AlertDialog
。这会对你有所帮助。阅读Alert Dialog
答案 4 :(得分:0)
在另一项活动中弹出:
将此主题添加到样式文件,然后将其设置为要在清单文件中弹出的活动。我确信该按钮可用于其他活动。
<resources>
<style name="Theme.Transparent" parent="android:Theme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
答案 5 :(得分:0)
我这样做了:
popupWindow.getContentView().setOnClickListener(new OnClickListener()...);
我希望它有所帮助。