日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Popupwindowdemo

發(fā)布時(shí)間:2025/3/20 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Popupwindowdemo 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

ShowPopupWindow:

package?com.example.popupwindowdemo; import?android.app.Activity; import?android.os.Bundle; import?android.view.Gravity; import?android.view.View; import?android.view.ViewGroup; import?android.widget.Button; import?android.widget.PopupWindow; public?class?ShowPopupWindow?extends?Activity?implements?View.OnClickListener?{View?view;PopupWindow?pop;Button?bt1,bt2,bt3;@Overrideprotected?void?onCreate(Bundle?savedInstanceState)?{//?TODO?Auto-generated?method?stubsuper.onCreate(savedInstanceState);setContentView(R.layout.popup_activity);bt1?=?(Button)?findViewById(R.id.btnShowAsDrawDown);bt1.setOnClickListener(this);bt2?=?(Button)?findViewById(R.id.btnShowAsDrawDown1);bt2.setOnClickListener(this);bt3?=?(Button)?findViewById(R.id.btnShowAt);bt3.setOnClickListener(this);initPopupWindow();}@Overridepublic?void?onClick(View?v)?{//?TODO?Auto-generated?method?stubswitch?(v.getId())?{case?R.id.btnShowAsDrawDown:if?(pop.isShowing())?{pop.dismiss();}?else?{pop.showAsDropDown(v);}break;case?R.id.btnShowAsDrawDown1:if?(pop.isShowing())?{pop.dismiss();}?else?{pop.showAsDropDown(v,?0,?-160);}break;default:if?(pop.isShowing())?{pop.dismiss();}?else?{pop.showAtLocation(findViewById(R.id.main),Gravity.CENTER_HORIZONTAL,?0,?0);}break;}}private?void?initPopupWindow()?{view?=?this.getLayoutInflater().inflate(R.layout.popup_window,?null);pop?=?new?PopupWindow(view,?ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);pop.setOutsideTouchable(true);view.setOnClickListener(new?View.OnClickListener()?{@Overridepublic?void?onClick(View?v)?{//?TODO?Auto-generated?method?stubpop.dismiss();}});} }

popup_activity:

<?xml?version="1.0"?encoding="utf-8"?> <LinearLayout?xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/main"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical"?><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="pop?展示"?/><Buttonandroid:id="@+id/btnShowAsDrawDown"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="第一個(gè)"?/><Buttonandroid:id="@+id/btnShowAsDrawDown1"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="第二個(gè)"?/><Buttonandroid:id="@+id/btnShowAt"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="第三個(gè)"?/> </LinearLayout>

popup_window:

<?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="#d3d3d3"android:gravity="center_horizontal"android:orientation="vertical"?><Buttonandroid:id="@+id/btn_pop"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_margin="10dip"android:text="哈哈哈"?/> </LinearLayout> <?xml?version="1.0"?encoding="utf-8"?> <LinearLayout?xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="wrap_content"android:background="#FFBBFFBB"android:orientation="vertical"?><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:padding="10dp"android:text="Hello?My?Window"android:textSize="20sp"?/><Buttonandroid:id="@+id/button1"android:layout_width="match_parent"android:layout_height="wrap_content"android:padding="10dp"android:text="Button"android:textSize="20sp"?/> </LinearLayout> 彈出框布局 package?com.example.popopupwindowdemo; import?android.os.Bundle; import?android.app.Activity; import?android.content.Context; import?android.util.Log; import?android.view.LayoutInflater; import?android.view.MotionEvent; import?android.view.View; import?android.view.View.OnClickListener; import?android.view.View.OnTouchListener; import?android.view.ViewGroup.LayoutParams; import?android.widget.Button; import?android.widget.PopupWindow; import?android.widget.Toast; public?class?MainActivity?extends?Activity?{private?Context?mContext?=?null;@Overrideprotected?void?onCreate(Bundle?savedInstanceState)?{super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mContext?=?this;Button?button?=?(Button)?findViewById(R.id.button);button.setOnClickListener(new?View.OnClickListener()?{@Overridepublic?void?onClick(View?view)?{showPopupWindow(view);}});}private?void?showPopupWindow(View?view)?{//?一個(gè)自定義的布局,作為顯示的內(nèi)容View?contentView?=?LayoutInflater.from(mContext).inflate(R.layout.pop_window,?null);//?設(shè)置按鈕的點(diǎn)擊事件Button?button?=?(Button)?contentView.findViewById(R.id.button1);button.setOnClickListener(new?OnClickListener()?{@Overridepublic?void?onClick(View?v)?{Toast.makeText(mContext,?"button?is?pressed",Toast.LENGTH_SHORT).show();}});final?PopupWindow?popupWindow?=?new?PopupWindow(contentView,LayoutParams.WRAP_CONTENT,?LayoutParams.WRAP_CONTENT,?true);popupWindow.setTouchable(true);popupWindow.setTouchInterceptor(new?OnTouchListener()?{@Overridepublic?boolean?onTouch(View?v,?MotionEvent?event)?{Log.i("mengdd",?"onTouch?:?");return?false;//?這里如果返回true的話,touch事件將被攔截//?攔截后?PopupWindow的onTouchEvent不被調(diào)用,這樣點(diǎn)擊外部區(qū)域無法dismiss}});//?如果不設(shè)置PopupWindow的背景,無論是點(diǎn)擊外部區(qū)域還是Back鍵都無法dismiss彈框//?我覺得這里是API的一個(gè)bugpopupWindow.setBackgroundDrawable(getResources().getDrawable(R.drawable.selectmenu_bg_downward));//?設(shè)置好參數(shù)之后再showpopupWindow.showAsDropDown(view);} }

轉(zhuǎn)載于:https://my.oschina.net/u/1994482/blog/425384

總結(jié)

以上是生活随笔為你收集整理的Popupwindowdemo的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。