zoukankan      html  css  js  c++  java
  • Activity--弹出底部窗口

    第一步 : 退出时候的布局文件exit_dialog_from_settings.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:gravity="center_horizontal" >
            <LinearLayout
           android:id="@+id/exit_layout2"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"   //高度包裹内容
                android:layout_gravity="bottom"        //父布局 的底部
                android:background="@drawable/exit_dialog_bg"       // 黑背景图片 9
                android:gravity="center_horizontal"   //  里面 横向 居中
                android:orientation="vertical" >
    
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="4dp"
                    android:gravity="center"
                    android:text="退出后不会删除任何历史数据,下次
    登录依然可以使用本帐号"
                    android:textColor="#fff"
                    android:textSize="16sp" />
    
                <Button
                    android:id="@+id/exitBtn0"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="10dp"
                    android:layout_marginTop="15dp"
                    android:background="@drawable/btn_style_alert_dialog_special"
                    android:gravity="center"
                    android:onClick="exitbutton0"
                    android:text="退出登录"
                    android:textColor="#fff"
                    android:textSize="18sp" />
    
                <Button
                    android:id="@+id/exitBtn1"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="10dp"
                    android:layout_marginLeft="10dp"   //间隔左边
                    android:layout_marginRight="10dp"   //间隔右边
                    android:layout_marginTop="15dp"
                    android:background="@drawable/btn_style_alert_dialog_cancel"
                    android:gravity="center"
                    android:onClick="exitbutton1"
                    android:text="取消"
                    android:textColor="#fff"
                    android:textSize="18sp" />
            </LinearLayout>
        </LinearLayout>
    </RelativeLayout>

     里面的drawable 下  btn_style_alert_dialog_special.xml

    <?xml version="1.0" encoding="UTF-8"?>  //btn_style_alert_dialog_special
    <selector
      xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" android:drawable="@drawable/btn_style_alert_dialog_special_pressed" />
        <item android:drawable="@drawable/btn_style_alert_dialog_special_normal" />
    </selector>

     btn_style_alert_dialog_cancel.xml 选择器

    <?xml version="1.0" encoding="UTF-8"?>//btn_style_alert_dialog_cancel
    <selector
      xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" android:drawable="@drawable/btn_style_alert_dialog_button_pressed" />
        <item android:drawable="@drawable/btn_style_alert_dialog_cancel_normal" />
    </selector>

    第二步 : 弹出窗口的ExitFromSettings 

    public class ExitFromSettings extends Activity {
        //private MyDialog dialog;
        private LinearLayout layout;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.exit_dialog_from_settings);
            //dialog=new MyDialog(this);
            layout=(LinearLayout)findViewById(R.id.exit_layout2);
            layout.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Toast.makeText(getApplicationContext(), "提示:点击窗口外部关闭窗口!", 
                            Toast.LENGTH_SHORT).show();    
                }
            });
        }
    
        @Override
        public boolean onTouchEvent(MotionEvent event){     // 点外面关闭
            finish();
            return true;
        }
        
        public void exitbutton1(View v) {  // 关闭当前
            this.finish();        
          }  
        public void exitbutton0(View v) {  
            this.finish();
            MainWeixin.instance.finish();//关闭Main 这个Activity
          }  
        
    }

      AndroidManifest.xml 中配置ExitFromSettings

      <activity android:name="ExitFromSettings" android:theme="@style/MyDialogStyleBottom"
    style.xml的配置 
      <style name="MyDialogStyleBottom" parent="android:Theme.Dialog" >
            <item name="android:windowAnimationStyle">@style/AnimBottom</item>   // 动画
            <item name="android:windowFrame">@null</item><!--边框-->
            <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
            <item name="android:windowIsTranslucent">true</item><!--半透明-->
            <item name="android:windowNoTitle">true</item><!--无标题-->
            <item name="android:windowBackground">@android:color/transparent</item><!--背景透明-->
            <item name="android:backgroundDimEnabled">true</item><!--模糊-->        
         </style>
    style.xml的配置 name= "AnimBottom"
    <style name="AnimBottom" parent="@android:style/Animation">  
            <item name="android:windowEnterAnimation">@anim/push_bottom_in</item>
            <item name="android:windowExitAnimation">@anim/push_bottom_out</item>
     </style>
    anim文件夹下: push_bottom_in     (translate位移动画)
    <?xml version="1.0" encoding="utf-8"?>
    <!-- 上下滑入式 -->
    <set xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <translate
            android:duration="200"
            android:fromYDelta="50%p"  //从屏幕下面的 50% 进入
            android:toYDelta="0" />     //  到 0 的位置
        
    </set>
    anim文件夹下: push_bottom_out
    <?xml version="1.0" encoding="utf-8"?>
    <!-- 上下滑入式   位移动画translate-->
    <set xmlns:android="http://schemas.android.com/apk/res/android" >
        
        <translate
            android:duration="200"
            android:fromYDelta="0"     // 从屏幕0 的位置
            android:toYDelta="50%p" />   //  到屏幕向下50%
    
    </set>


  • 相关阅读:
    整理ASP.NET MVC 5各种错误请求[401,403,404,500]的拦截及自定义页面处理实例
    Sql Server 创建表添加说明
    c# 去除字符串中重复字符
    WebStorm中常用的快捷键及使用技巧
    git bash中的快捷键
    git bash here 的 ~/.bashrc 配置文件。和 vue/cli 3. 0 的 .vuerc文件(preset )
    右键菜单添加打开CMD选项
    Vue中使用Vue.component定义两个全局组件,用单标签应用组件时,只显示一个组件的问题和 $emit的使用。
    vue和stylus在subline中显示高亮
    stylus入门教程,在webstorm中配置stylus
  • 原文地址:https://www.cnblogs.com/java-g/p/4149624.html
Copyright © 2011-2022 走看看