大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > Android技巧 > Android 中PopupWindow使用 (转)

Android 中PopupWindow使用 (转)

关键词:AndroidPopupWindow  阅读(794) 赞(15)

[摘要]本文是对Android 中PopupWindow使用 (转)的讲解,对学习Android编程技术有所帮助,与大家分享。

参考学习后遇到问题:

要引用:有好几个,可以用错误提示解决;

import android.widget.PopupWindow;

import android.widget.Toast;

Activity调用过程 :

首先定义一个BUTTON变量和mContext

private Button mshowBtn;
private Context mContext;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startService(new Intent(LoginActivity.this, MicroVideoService.class));
bindXMPPService();
setContentView(R.layout.loginpage);
mContext=this;
initView();
}

//指定事件

mshowBtn= (Button) findViewById(R.id.showbtn);
mshowBtn.setOnClickListener(mshowBtnOnClickListener);

//实现事件并调用

private OnClickListener mshowBtnOnClickListener= new OnClickListener(){
@Override
public void onClick(View v) {
showPopWindow(mContext,v);
}

};

(转自:import android.widget.PopupWindow;)

Android 中PopupWindow使用。

PopupWindow会阻塞对话框,要在外部线程 或者 PopupWindow本身做退出才行。

mypopWindow.xml的Layout设计如下

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#259"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Here is Pop Window" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancle" />
</LinearLayout>
MainActivity.java文件。

在MainActivity的Button按钮单击,然后显示PopupWindow。

private void showPopWindow(Context context, View parent)
{
LayoutInflater inflater = (LayoutInflater)
context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View vPopWindow=inflater.inflate(R.layout.mypopwindow, null, false);
//宽300 高300
final PopupWindow popWindow = new PopupWindow(vPopWindow,300,300,true);
Button okButton = (Button)vPopWindow.findViewById(R.id.button1);
okButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "You click OK", Toast.LENGTH_SHORT).show();
}
});
Button cancleButton = (Button)vPopWindow.findViewById(R.id.button2);
cancleButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
popWindow.dismiss(); //Close the Pop Window
}
});
popWindow.showAtLocation(parent, Gravity.CENTER, 0, 0);
}
效果图如下:最后显示是剧中的,这里我只是截取了部分图片。
单击Ok按钮显示You click OK信息。单击取消,则关闭PopupWindow.


相关评论