zoukankan      html  css  js  c++  java
  • Activity---弹出右侧窗口

    第一步: Activity弹出窗口的布局

    <?xml version="1.0" encoding="UTF-8"?>   //布局文件main_top_right_dialog
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_marginTop="46dp" >
            <LinearLayout
    android:id="@+id/main_dialog_layout"
                android:layout_width="wrap_contenta"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"           // 右边
                android:layout_alignParentTop="true"          //   top
                android:background="@drawable/title_function_bg"   //黑背景图片9
                android:orientation="vertical" >
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" >
    
                    <ImageView
                        android:id="@+id/imageView1"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dp"
                        android:src="@drawable/mm_title_btn_compose_normal" />
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:padding="8dp"
                        android:text="发起聊天"
                        android:textColor="#fff"
                        android:textSize="18sp" />
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" >
    
                    <ImageView
                        android:id="@+id/imageView2"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dp"
                        android:src="@drawable/mm_title_btn_receiver_normal" />
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:padding="8dp"
                        android:text="听筒模式"
                        android:textColor="#fff"
                        android:textSize="18sp" />
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" >
    
                    <ImageView
                        android:id="@+id/imageView3"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dp"
                        android:src="@drawable/mm_title_btn_keyboard_normal" />
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:padding="8dp"
                        android:text="登录网页版"
                        android:textColor="#fff"
                        android:textSize="18sp" />
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" >
    
                    <ImageView
                        android:id="@+id/imageView4"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dp"
                        android:src="@drawable/mm_title_btn_qrcode_normal" />
    
                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:padding="8dp"
                        android:text="扫一扫"
                        android:textColor="#fff"
                        android:textSize="18sp" />
                </LinearLayout>
            </LinearLayout>
        </RelativeLayout>
    
    </RelativeLayout>

    效果图

    第二步 .进入到这个弹出的 activity 

    public class MainTopRightDialog extends Activity {   //弹出的activity
        //private MyDialog dialog;
        private LinearLayout layout;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main_top_right_dialog);
            //dialog=new MyDialog(this);
            layout=(LinearLayout)findViewById(R.id.main_dialog_layout);
            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;
        }
    
    }

     这MainTopRightDialog 在 AndroidManifest.xml的配置

     <activity android:name="MainTopRightDialog" android:theme="@style/MyDialogStyleTop" /> 
    styles.xml 的配置 
       <style name="MyDialogStyleTop" parent="android:Theme.Dialog" >
            <item name="android:windowAnimationStyle">@style/AnimTop2</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">false</item><!--模糊-->        
         </style>
    styles.xml 的配置(name = AnimTop2)
    <style name="AnimTop2" parent="@android:style/Animation">  
            <item name="android:windowEnterAnimation">@anim/push_top_in2</item>
            <item name="android:windowExitAnimation">@anim/push_top_out2</item>
    </style>

    res 的anim 文件夹下 push_top_in2.xml

    <?xml version="1.0" encoding="utf-8"?>
    <!-- 上下滑入式   scale缩放-->
    <scale   xmlns:android="http://schemas.android.com/apk/res/android"
            android:interpolator="@android:anim/accelerate_decelerate_interpolator"  
            android:fromXScale="1.0"   <!-- 开始时X方向  缩放比例(1.0代表不缩放)-->
            android:toXScale="1.0"     <!-- 结尾时X方向  缩放比例(1.0代表不缩放)-->
            android:fromYScale="0"   <!-- 结尾时Y方向  缩放比例(0代表,最小开始缩放)-->
            android:toYScale="1.0"   <!-- 结尾时y方向  缩放比例(1.0代表缩放原始比例)-->
            android:pivotX="0"      <!-- 属性代表缩放的中轴点X坐标-->
            android:pivotY="10%"    <!-- 代表缩放的中轴点Y坐标-->
            android:duration="200" />  <!-- 代表动画持续的时间,单位为毫秒-->

    res 的anim 文件夹下push_top_out2.xml

    <?xml version="1.0" encoding="utf-8"?>
    
    <scale   xmlns:android="http://schemas.android.com/apk/res/android"   //scale代表缩放
            android:interpolator="@android:anim/accelerate_decelerate_interpolator"  
            android:fromXScale="1.0"    <!-- 开始时X方向  缩放比例(1.0代表不缩放)-->
            android:toXScale="1.0"   <!-- 结尾时X方向  缩放比例(1.0代表不缩放)-->
            android:fromYScale="1.0"    <!-- 结尾时y方向  缩放比例(1.0代表缩放原始比例)-->
            android:toYScale="0"    <!-- 结尾时Y方向  缩放比例(0代表,最小开始缩放)-->
            android:pivotX="0"      <!-- 属性代表缩放的中轴点X坐标-->
            android:pivotY="10%"    <!-- 代表缩放的中轴点Y坐标-->
            android:duration="200" />    <!-- 代表动画持续的时间,单位为毫秒-->
  • 相关阅读:
    strdup和strndup函数
    c# 获取客户端IP地址方法
    The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.报错解决办法
    C#将Excel数据表导入SQL数据库的两种方法(转)
    Winform 无法监听方向键(向上,向下,向左,向右)
    一个优秀的.net程序员必须要学会的技能 (转)-----参照学习目标
    iTextSharp 使用详解(转)
    mac 快捷键
    mvc 项目运行报错检查web.config
    C语言堆栈入门——堆和栈的区别 -- 转
  • 原文地址:https://www.cnblogs.com/java-g/p/4149525.html
Copyright © 2011-2022 走看看