Android开发实现popupWindowd出窗口自定义布局与位置控制方法

Android开发实现popupWindowd出窗口自定义布局与位置控制方法,第1张

概述本文实例讲述了Android开发实现popupWindowd出窗口自定义布局与位置控制方法。分享给大家供大家参考,具体如下:

本文实例讲述了AndroID开发实现popupWindowd出窗口自定义布局与位置控制方法。分享给大家供大家参考,具体如下:

布局文件:

主布局文件:activity_main:

<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"  xmlns:tools="http://schemas.androID.com/tools"  androID:layout_wIDth="match_parent"  androID:layout_height="match_parent"  tools:context="com.example.bige.MainActivity"  androID:orIEntation="vertical">  <linearLayout    androID:layout_margintop="10dp"    androID:layout_marginleft="10dp"    androID:layout_marginRight="10dp"    androID:orIEntation="vertical"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">  <linearLayout    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:textSize="20dp"      androID:paddingtop="10dp"      androID:gravity="left"      androID:layout_wIDth="0dp"      androID:layout_height="match_parent"      androID:layout_weight="3"      androID:text="富乃宝山"      androID:background="#AAAAAA"/>    <button      androID:layout_marginRight="5dp"      androID:layout_marginleft="5dp"      androID:background="#AAAAAA"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="0点"/>    <button      androID:ID="@+ID/num1"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:textcolor="@androID:color/white"      androID:background="#000000"      androID:text="1"/>  </linearLayout>  <linearLayout    androID:layout_margintop="10dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ビ`ル"      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="FD"      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"      />    <button      androID:layout_marginleft="3dp"      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="酎"      androID:background="#6FA5DB"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="日本酒"      androID:background="#A4A4A4"/>  </linearLayout>  <linearLayout    androID:layout_margintop="2dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ソフト "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="サワ` "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"      />    <button      androID:layout_marginleft="3dp"      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="カクテル "      androID:background="#A4A4A4"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ワイン "      androID:background="#A4A4A4"/>  </linearLayout>  <linearLayout    androID:layout_margintop="2dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="果g酒 "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ウイスキ` "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"      />    <button      androID:layout_marginleft="3dp"      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"/>  </linearLayout>  <linearLayout    androID:layout_margintop="2dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="会席M行 "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="パックM行 "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"      />    <button      androID:layout_marginleft="3dp"      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="g品 "      androID:background="#A4A4A4"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"/>  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_margintop="2dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ソフト "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="サワ` "      androID:background="#A4A4A4"      androID:layout_marginRight="3dp"      />    <button      androID:layout_marginleft="3dp"      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="カクテル "      androID:background="#A4A4A4"/>    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="ワイン "      androID:background="#A4A4A4"/>  </linearLayout>  <linearLayout    androID:layout_margintop="10dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"      androID:text="ロック " />    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"      androID:text="水割り " />    <button      androID:layout_marginRight="3dp"      androID:layout_marginleft="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"      androID:text="お瞍 " />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"      androID:text="ソ`ダ割 " />  </linearLayout>  <linearLayout    androID:layout_margintop="3dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_marginleft="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />  </linearLayout>  <linearLayout    androID:layout_margintop="3dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_marginleft="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />  </linearLayout>  <linearLayout    androID:layout_margintop="3dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_marginleft="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />  </linearLayout>  <linearLayout    androID:layout_margintop="3dp"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4"      androID:text=" " />    <button      androID:layout_marginRight="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_marginRight="3dp"      androID:layout_marginleft="3dp"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="#A4A4A4" />  </linearLayout>  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_margintop="10dp"    androID:layout_marginBottom="0dp"    androID:background="#5399D9"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginleft="15dp"      androID:layout_marginRight="3dp"      androID:background="#FFC727"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="AC"/>    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginRight="3dp"      androID:background="#6DB040"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="NG"/>    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginRight="3dp"      androID:background="#6DB040"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="後"/>    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginRight="3dp"      androID:background="#6DB040"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="急"/>    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginRight="3dp"      androID:background="#6DB040"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="▲"/>    <button      androID:layout_marginBottom="3dp"      androID:layout_margintop="3dp"      androID:layout_marginRight="15dp"      androID:background="#FFC727"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="_J"/>  </linearLayout></linearLayout>

d出布局设置:

number:

<?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"  androID:ID="@+ID/number"  androID:background="#FCFCFC">  <linearLayout    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <EditText      androID:gravity="right"      androID:background="@drawable/edittext"      androID:layout_wIDth="match_parent"      androID:layout_height="40dp"      androID:hint="0"      androID:textSize="35dp"      />  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="7" />    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="8" />    <button      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="9" />  </linearLayout>  <linearLayout    androID:layout_margintop="1dp"    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="4" />    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="5" />    <button      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="6" />  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="1" />    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="2" />    <button      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="3" />  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="0" />    <button      androID:layout_marginRight="1dp"      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="→" />    <button      androID:background="@drawable/button"      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:text="C" />  </linearLayout>  <linearLayout    androID:orIEntation="horizontal"    androID:layout_wIDth="match_parent"    androID:layout_height="wrap_content">    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="@drawable/button"      androID:text="" />    <button      androID:layout_wIDth="0dp"      androID:layout_height="wrap_content"      androID:layout_weight="1"      androID:background="@drawable/button"      androID:text="OK" />  </linearLayout></linearLayout>

MainActivity布局:

package com.example.bige;import androID.support.v4.Widget.PopupWindowCompat;import androID.support.v7.app.AppCompatActivity;import androID.os.Bundle;import androID.vIEw.Gravity;import androID.vIEw.VIEw;import androID.vIEw.Window;import androID.vIEw.WindowManager;import androID.Widget.button;import androID.Widget.PopupWindow;import androID.Widget.Toast;public class MainActivity extends AppCompatActivity {  button mbtn;  @OverrIDe  protected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    requestwindowFeature(Window.FEATURE_NO_Title);    getwindow().setFlags(WindowManager.LayoutParams.FLAG_FulLSCREEN,WindowManager.LayoutParams.FLAG_FulLSCREEN);    setContentVIEw(R.layout.activity_main);    VIEw root = this.getLayoutInflater().inflate(R.layout.number,null);    //设置d出布局自适应大小    final PopupWindow popup = new PopupWindow(root,WindowManager.LayoutParams.WRAP_CONTENT,WindowManager.LayoutParams.WRAP_CONTENT);    mbtn = (button) findVIEwByID(R.ID.num1);    mbtn.setonClickListener(new VIEw.OnClickListener() {      @OverrIDe      public voID onClick(VIEw vIEw) {        // popup.isShowing();        Toast.makeText(MainActivity.this,"hh",Toast.LENGTH_SHORT).show();         //控制pupupd出位置在父布局的中间显示         //四个参数分别表示,要参考的控件vIEw,相对位置,后边两个参数int x,int y表示偏移        popup.showAtLocation(vIEw,Gravity.CENTER,0);      }    });  }}

更多关于AndroID相关内容感兴趣的读者可查看本站专题:《Android窗口相关 *** 作技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家AndroID程序设计有所帮助。

总结

以上是内存溢出为你收集整理的Android开发实现popupWindowd出窗口自定义布局与位置控制方法全部内容,希望文章能够帮你解决Android开发实现popupWindowd出窗口自定义布局与位置控制方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1144399.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存