• Android——菜单和进度条


    xml

    <?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"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.example.chenshuai.test322.UiActivity2"
    
        android:orientation="vertical">
    
        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="长按触发上下文菜单"
            android:id="@+id/bt_changan"/>
    
        <!--进度条 不可拖动 圈-->
        <ProgressBar
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/pb_1"
            />
        <!--进度条 水平线-->
        <ProgressBar
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            style="?android:attr/progressBarStyleHorizontal"
            android:id="@+id/pb_2"
            android:max="100"
            android:progress="50"
            android:secondaryProgress="70"
            />
        <!--进度条 可以拖动-->
        <SeekBar
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:max="100"
            android:progress="50"
            android:id="@+id/sbr_1"
            />
        <!---->
        <RatingBar
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:numStars="6"
            android:rating="4.5"
            android:isIndicator="true"/>
    
    </LinearLayout>

    java

    package com.example.chenshuai.test322;
    
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.ContextMenu;
    import android.view.Menu;
    import android.view.MenuInflater;
    import android.view.MenuItem;
    import android.view.SubMenu;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ProgressBar;
    import android.widget.SeekBar;
    import android.widget.Toast;
    
    /**
     * Created by chenshuai on 2016/3/30.
     */
    public class UIActivity2 extends AppCompatActivity {
    
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_ui2);
    
            Button bt_changan = (Button)findViewById(R.id.bt_changan);
            bt_changan.setOnCreateContextMenuListener(this);
    
    
            //进度条
            //final 生命周期为整个类
            final ProgressBar pb_1 = (ProgressBar)findViewById(R.id.pb_1);
            final ProgressBar pb_2 = (ProgressBar)findViewById(R.id.pb_2);
    
            SeekBar sb_1 = (SeekBar)findViewById(R.id.sbr_1);
    
            sb_1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
                @Override
                public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
    
    
                    pb_2.setProgress(progress);
                }
    
                //开始拖动
                @Override
                public void onStartTrackingTouch(SeekBar seekBar) {
    
                }
    
                //结束拖动
                @Override
                public void onStopTrackingTouch(SeekBar seekBar) {
    
                    pb_2.setProgress(seekBar.getProgress());
                    if (seekBar.getProgress()==seekBar.getMax())
                    {
                        //设置不可见  GONE不占位置  invisible 占位置
                        pb_1.setVisibility(View.GONE);
    
                    }
                    else
                    {
                        //可见
                        pb_1.setVisibility(View.VISIBLE);
                    }
    
    
                }
            });
        }
    
        //菜单  上下文菜单
        @Override
        public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    
            menu.add(0,1,0,"添加");
            menu.add(0, 2, 1, "修改");
            menu.add(0,3,2,"删除");
            SubMenu m = menu.addSubMenu(0, 4, 3, "子菜单");
            m.add(0,4-1,0,"子菜单项一");
            m.add(0,4-2,1,"子菜单项二");
            m.add(0,4-3,2,"子菜单项三");
            m.add(0,4-4,3,"子菜单项四");
    
    
            super.onCreateContextMenu(menu, v, menuInfo);
        }
    
    
        @Override
        public boolean onContextItemSelected(MenuItem item) {
    
            switch (item.getItemId())
            {
                case 1:
                    Toast.makeText(UIActivity2.this, "触发了添加功能", Toast.LENGTH_SHORT).show();
                    break;
                case 2:
                    Toast.makeText(UIActivity2.this, "触发了删除功能", Toast.LENGTH_SHORT).show();
                    break;
                case 3:
                    Toast.makeText(UIActivity2.this, "触发了修改功能", Toast.LENGTH_SHORT).show();
                    break;
    
            }
            return super.onContextItemSelected(item);
        }
    
        @Override
        //重写  创建选项菜单的方法
        public boolean onCreateOptionsMenu(Menu menu) {
    
            //添加菜单项
            //第一种 纯编码方式
            /*menu.add(0, 1, 0, "添加");
            menu.add(0, 2, 2, "删除");
            menu.add(0, 3, 1, "修改");
    */
            //第二种  加载菜单文件方式
    
            //1.获取一个菜单加载器
    
            MenuInflater menuInflater = getMenuInflater();
    
            menuInflater.inflate(R.menu.mymenu,menu);
    
    
            return super.onCreateOptionsMenu(menu);
        }
    
        @Override
        public boolean onOptionsItemSelected (MenuItem item){
    
            //Toast.makeText(UiActivity2.this, "选中的菜单项是" + item.getTitle(), Toast.LENGTH_SHORT).show();
    
            //根据菜单项不同响应不同功能
            switch (item.getItemId()) {
                case 1:
                    Toast.makeText(UIActivity2.this, "触发了添加功能", Toast.LENGTH_SHORT).show();
                    break;
                case 2:
                    Toast.makeText(UIActivity2.this, "触发了删除功能", Toast.LENGTH_SHORT).show();
                    break;
                case 3:
                    Toast.makeText(UIActivity2.this, "触发了修改功能", Toast.LENGTH_SHORT).show();
                    break;
                case R.id.it1:
                    Toast.makeText(UIActivity2.this, "触发了删除一功能", Toast.LENGTH_SHORT).show();
                    break;
                case R.id.it2:
                    Toast.makeText(UIActivity2.this, "触发了添加一功能", Toast.LENGTH_SHORT).show();
                    break;
            }
    
    
            return super.onOptionsItemSelected(item);
    
    
        }
    }

  • 相关阅读:
    可持久化+Trie || BZOJ 3261最大异或和 || Luogu P4735 最大异或和
    费用流+SPFA ||Luogu P3381【模板】最小费用最大流
    费用流+SPFA ||【模板】最小费用最大流
    Dinic二分图匹配 || Luogu P3386
    Dinic最大流 || Luogu P3376 【模板】网络最大流
    fhq_treap || BZOJ1861: [Zjoi2006]Book 书架 || Luogu P2596 [ZJOI2006]书架
    fhq_treap || BZOJ 3223: Tyvj 1729 文艺平衡树 || Luogu P3391 【模板】文艺平衡树(Splay)
    fhq_treap || BZOJ 3224: Tyvj 1728 普通平衡树 || Luogu P3369 【模板】普通平衡树
    Manacher || BZOJ 2342: [Shoi2011]双倍回文 || Luogu P4287 [SHOI2011]双倍回文
    Manacher || P4555 [国家集训队]最长双回文串 || BZOJ 2565: 最长双回文串
  • 原文地址:https://www.cnblogs.com/Chenshuai7/p/5339521.html
Copyright © 2020-2023  润新知