【安卓开发】Gridview网格布局+Webview

130 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

activity_numlock.xml

  • 总体是垂直线性布局
  • 里面放1个textview作为标题,1个textview作为获取密码的寄存地,1个gridview网格布局

bg_lock.xml

  • 总体是垂直线性布局
  • 里面一个textview文本框

numlock.java

  • 锁屏界面相关制作,代码尚未优化,凑合看
  • 用到 list 和 simpleadapter 适配器
public class numlock extends AppCompatActivity {

    private ListView listview;
    private ArrayList<Map<String, Object>> list;
    private SimpleAdapter simpleadapter;
    private GridView gridview;

    String[] items = new String[]{"1", "2", "3", "4", "5", "6", "7", "8", "9", "紧急呼叫", "0", "×"};
    String passwords = "";
    private TextView password;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_numlock);

        list = new ArrayList<>();
        for (int i = 0; i < items.length; i++) {

            Map<String, Object> map = new HashMap<>();
            map.put("001数字", items[i]);
            list.add(map);

        }

        simpleadapter = new SimpleAdapter(getApplicationContext(), list, R.layout.bg_lock, new String[]{"001数字"}, new int[]{R.id.number});

        gridview = (GridView) findViewById(R.id.gridview);
        gridview.setAdapter(simpleadapter);

        password = (TextView) findViewById(R.id.password);

        gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int i, long l) {
                if (i == 0 || i == 1 || i == 2 || i == 3 || i == 4 || i == 5 || i == 6 || i == 7 || i == 8) {
                    passwords += String.valueOf(i + 1);
                    password.setText(passwords);
                    if (passwords.equals("134679")) {
                        Toast.makeText(getApplicationContext(), "密码输入正确", Toast.LENGTH_SHORT).show();
                        Intent intent = new Intent(getApplicationContext(), welcome.class);
                        startActivity(intent);
                        passwords = "";
                        password.setText(passwords);
                    }
                    if(!passwords.equals("134679") && passwords.length() == 6){
                        Toast.makeText(getApplicationContext(), "密码输入错误", Toast.LENGTH_SHORT).show();
                        passwords = passwords.substring(0,0);
                        password.setText(passwords);
                    }
                }
                if (i == 9) {
                    Intent intent = new Intent();
                    intent.setAction(Intent.ACTION_DIAL);
                    String data = "tel:";
                    Uri uri = Uri.parse(data);
                    intent.setData(uri);
                    startActivity(intent);
                    passwords = passwords.substring(0,0);
                    password.setText(passwords);
                }
                if (i == 10) {
                    passwords += String.valueOf(0);
                    password.setText(passwords);
                    if (passwords.equals("134679")) {
                        Toast.makeText(getApplicationContext(), "密码输入正确", Toast.LENGTH_SHORT).show();
                        Intent intent = new Intent(getApplicationContext(), welcome.class);
                        startActivity(intent);
                    }
                    if(!passwords.equals("134679") && password.length() == 6){
                        Toast.makeText(getApplicationContext(), "密码输入错误", Toast.LENGTH_SHORT).show();
                        passwords = passwords.substring(0,0);
                        password.setText(passwords);
                    }
                }
                if (i == 11 && password.length() != 0) {
                    passwords = passwords.substring(0, passwords.length() - 1);
                    password.setText(passwords);
                }
            }
        });
    }
}

设计效果图

在这里插入图片描述 在这里插入图片描述

activity_main.xml

  • 垂直线性布局里放1个imageview图片和1个textview文本

Mainactivity.java

  • 代码没优化,看着比较多。。。
public class MainActivity extends AppCompatActivity {

    private ListView listview;
    private ArrayList<Map<String, Object>> list;
    private SimpleAdapter simpleadapter;
    private GridView gridview;

    String[] items = new String[]{"流利说-英语","QQ","微信","高德地图","支付宝","QQ空间","网易云音乐","QQ安全中心","云闪付",
            "腾讯视频", "爱奇艺视频","优酷视频","哔哩哔哩","百度网盘","快搜","抖音短视频","微博","CSDN","知乎","百度贴吧",
            "网易有道词典", "手机淘宝","京东","中国大学MOOC"};

    int images[] = new int[]{R.drawable.yingyuliulishuo,R.drawable.qq,R.drawable.wechat,R.drawable.gaode,R.drawable.alipay,
            R.drawable.kongjian, R.drawable.wangyiyunyinyue,R.drawable.qqanquanzhongxin,R.drawable.imagick,
            R.drawable.tengxunshipin, R.drawable.aiqiyishipin, R.drawable.youku, R.drawable.bilibili,R.drawable.baiduwangpan,
            R.drawable.liulanqi, R.drawable.douyin,R.drawable.weibo,R.drawable.boke,R.drawable.zhihu,R.drawable.baidutiebatest,
            R.drawable.youdaocidian,R.drawable.shoujitaobao,R.drawable.jingdong,R.drawable.tubiaozhizuomoban};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        list = new ArrayList<>();
        for (int i=0;i<items.length;i++){

            Map<String,Object> map = new HashMap<>();
            map.put("001图片",images[i]);
            map.put("002文字",items[i]);
            list.add(map);

        }

        simpleadapter = new SimpleAdapter(getApplicationContext(), list, R.layout.bg ,new String[]{"001图片", "002文字"}, new int[]{R.id.imageView,R.id.textview});

        gridview = (GridView) findViewById(R.id.gridview);
        gridview.setAdapter(simpleadapter);
        gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int i, long l) {
                if (i==0){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.liulishuo.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==1){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://im.qq.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==2){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://weixin.qq.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==3){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.amap.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==4){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.alipay.com/");
                    intent.setData(uri);
                    startActivity(intent);

                }
                if (i==5){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://qzone.qq.com/");
                    intent.setData(uri);
                    startActivity(intent);

                }
                if (i==6){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://music.163.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==7){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://aq.qq.com/cn2/index");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==8){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://yunshanfu.unionpay.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==9){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://v.qq.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==10){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.iqiyi.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==11){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.youku.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==12){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.bilibili.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==13){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://pan.baidu.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==14){
                    Intent intent =new Intent(getApplicationContext(),search.class);
                    startActivity(intent);
                }
                if (i==15){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.douyin.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==16){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://weibo.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==17){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.csdn.net/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==18){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.zhihu.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==19){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://tieba.baidu.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==20){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("http://www.youdao.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==21){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.taobao.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==22){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.jd.com/");
                    intent.setData(uri);
                    startActivity(intent);
                }
                if (i==23){
                    Intent intent =new Intent();
                    intent.setAction(Intent.ACTION_VIEW);
                    Uri uri = Uri.parse("https://www.icourse163.org/");
                    intent.setData(uri);
                    startActivity(intent);
                }
            }
        });

    }
}

设计效果图

在这里插入图片描述

search.java

  • 用webview简单做了个百度搜索,遗憾的是关键词搜索还没做。。
public class search extends AppCompatActivity {

    private EditText edit;
    private Button search;
    private Button search2;
    private Button search3;
    private Button search_pic;
    private Button search_music;
    private WebView web;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_search);

        edit = (EditText) findViewById(R.id.edit);

        edit.setOnKeyListener(new View.OnKeyListener() {
            @Override
            public boolean onKey(View v, int i, KeyEvent keyevent) {

                if (i == KeyEvent.KEYCODE_ENTER) {
                    Toast.makeText(getApplicationContext(), "开始搜索...", Toast.LENGTH_SHORT).show();
                    web.loadUrl(edit.getText().toString());
                }

                return false;
            }
        });

        search = (Button) findViewById(R.id.search);
        web = (WebView) findViewById(R.id.webView);

        search.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Toast.makeText(getApplicationContext(), "开始搜索...", Toast.LENGTH_SHORT).show();
                web.loadUrl(edit.getText().toString());

            }
        });

        search2 = (Button) findViewById(R.id.search2);
        search2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                Uri uri = Uri.parse("http://win.web.nf01.sycdn.kuwo.cn/6355b6f4126ea1a3ee7f29526865f709/5e8757d0/resource/n2/10/56/3090490600.mp3");
                intent.setData(uri);
                startActivity(intent);
            }
        });

        search3 = (Button) findViewById(R.id.search3);
        search3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                Uri uri = Uri.parse("http://nc01.sycdn.kuwo.cn/6d4f2a5446007665b618c2f779f5d8cc/5e875785/resource/n1/49/74/4231454812.mp3");
                intent.setData(uri);
                startActivity(intent);
            }
        });

        search_pic = (Button) findViewById(R.id.search_pic);
        search_pic.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                Uri uri = Uri.parse("https://pic.sogou.com/pics?query=%B6%AF%CD%BC&w=05009900&p=&_asf=pic.sogou.com&_ast=1539054169&sc=index&sut=3769&sst0=1539054168771");
                intent.setData(uri);
                startActivity(intent);
            }
        });

        search_music = (Button) findViewById(R.id.search_music);
        search_music.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.setAction(Intent.ACTION_VIEW);
                Uri uri = Uri.parse("https://y.qq.com/portal/search.html#page=1&searchid=1&remoteplace=txt.yqq.top&t=song&w=%E9%9F%B3%E4%B9%90");
                intent.setData(uri);
                startActivity(intent);
            }
        });
    }
}

设计效果图

在这里插入图片描述