欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android中PopupWindow彈出式窗口使用方法詳解

 更新時間:2022年09月19日 14:31:47   作者:路宇  
這篇文章主要為大家詳細(xì)介紹了Android中PopupWindow彈出式窗口的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Android中PopupWindow彈出式窗口使用的具體代碼,供大家參考,具體內(nèi)容如下

效果圖如下:

實現(xiàn)代碼如下:

activity_popup_window.xml按鈕

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
? ? xmlns:app="http://schemas.android.com/apk/res-auto"
? ? xmlns:tools="http://schemas.android.com/tools"
? ? android:layout_width="match_parent"
? ? android:layout_height="match_parent"
? ? android:orientation="vertical"
? ? tools:context=".PopupWindowActivity">

? ? <Button
? ? ? ? android:id="@+id/btn_popupWindow"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:layout_gravity="center"
? ? ? ? android:text="PopupWindow" />
</LinearLayout>

自定義彈出的視圖layout_pop.xml,也可以用RecycleView或者ListView

<?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="match_parent"
? ? android:orientation="vertical">

? ? <TextView
? ? ? ? android:id="@+id/tv_good"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:gravity="center"
? ? ? ? android:paddingTop="8dp"
? ? ? ? android:paddingBottom="8dp"
? ? ? ? android:text="好"
? ? ? ? android:textColor="@color/gray"
? ? ? ? android:textSize="20sp" />

? ? <View
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="0.5dp"
? ? ? ? android:background="@color/gray" />

? ? <TextView
? ? ? ? android:id="@+id/tv_not_too_bad"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:gravity="center"
? ? ? ? android:paddingTop="8dp"
? ? ? ? android:paddingBottom="8dp"
? ? ? ? android:text="還行"
? ? ? ? android:textColor="@color/gray"
? ? ? ? android:textSize="20sp" />

? ? <View
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="0.5dp"
? ? ? ? android:background="@color/gray" />

? ? <TextView
? ? ? ? android:id="@+id/tv_bad"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="wrap_content"
? ? ? ? android:gravity="center"
? ? ? ? android:paddingTop="8dp"
? ? ? ? android:paddingBottom="8dp"
? ? ? ? android:text="不好"
? ? ? ? android:textColor="@color/gray"
? ? ? ? android:textSize="20sp" />
</LinearLayout>

PopupWindowActivity類實現(xiàn)代碼如下:

public class PopupWindowActivity extends AppCompatActivity {
? ? private Button btn_popupWindow;
? ? private PopupWindow popupWindow;

? ? @Override
? ? protected void onCreate(Bundle savedInstanceState) {
? ? ? ? super.onCreate(savedInstanceState);
? ? ? ? setContentView(R.layout.activity_popup_window);
? ? ? ? btn_popupWindow = findViewById(R.id.btn_popupWindow);
? ? ? ? btn_popupWindow.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onClick(View view) {
? ? ? ? ? ? ? ? View popup_view = LayoutInflater.from(PopupWindowActivity.this).inflate(R.layout.layout_pop, null);
? ? ? ? ? ? ? ? TextView textView = popup_view.findViewById(R.id.tv_good);
? ? ? ? ? ? ? ? textView.setOnClickListener(new View.OnClickListener() {
? ? ? ? ? ? ? ? ? ? @Override
? ? ? ? ? ? ? ? ? ? public void onClick(View view) {
? ? ? ? ? ? ? ? ? ? ? ? popupWindow.dismiss();
? ? ? ? ? ? ? ? ? ? ? ? Toast.makeText(PopupWindowActivity.this, "好", Toast.LENGTH_SHORT).show();
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? });
? ? ? ? ? ? ? ? popupWindow = new PopupWindow(popup_view, btn_popupWindow.getWidth(), ViewGroup.LayoutParams.WRAP_CONTENT);
? ? ? ? ? ? ? ? //設(shè)置彈出窗口應(yīng)該接收外部觸摸事件
? ? ? ? ? ? ? ? popupWindow.setOutsideTouchable(true);
? ? ? ? ? ? ? ? //設(shè)置可聚焦
? ? ? ? ? ? ? ? popupWindow.setFocusable(true);
? ? ? ? ? ? ? ? popupWindow.showAsDropDown(btn_popupWindow);
? ? ? ? ? ? }
? ? ? ? });
? ? }
}

以上就是PopupWindow彈出式窗口的簡單使用。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論