S2. Android 常用控件

概述

  • Button(普通按钮)
  • Toast(消息提示)
  • Menu(菜单)

Button

  • 在 MainActivity 对应的布局文件 activity_main.xml 中,使用图形编辑器加入一个按钮,如下图所示:

  • activity_main.xml 中会添加 Button 的代码,手动修改 id,text 信息,添加 onClick 事件
    <Button
        android:id="@+id/testBtn"
        android:layout_width="150dp"
        android:layout_height="43dp"
        android:onClick="onClick"
        android:text="测试按钮"
        tools:layout_editor_absoluteX="130dp"
        tools:layout_editor_absoluteY="46dp" />
  • 在 MainActivity.java 文件中添加 onClick 方法:同一个 Activity 的 click 事件可以使用同一个 onClick 方法来响应,通过 switch/case 进行分发。
    protected void onClick(View v){
        switch (v.getId()){
            case R.id.testBtn:
                Toast.makeText(this, "测试按钮被点击", Toast.LENGTH_SHORT).show();
        }
    }

Toast

  • 应用场景:例如打开手机淘宝,按一下返回键退出时,手机淘宝会提示“再按一次返回键退出手机淘宝”;同样 B站 App 也会在按一下返回键退出时提示 “再按一次退出”;这样的实现,是为了防止用户错按到返回键而退出,当然也有很多 App 并没有实现这一功能,或者说取消了这一功能,某程度上错按返回键的可能性不大,在不错按的时候 “阻止” 用户退出的行为多少用点影响用户体验。
  • 下面使用 Toast 来实现一下这个提示功能:Toast.makeText 三个参数:

  1). 消息展示的 Context 实例,一般指当前 Activity 实例;

  2). 消息提示的内容:字符串格式,也可以写到 R资源中;

  3). 消息提示的时间长度:Toast.LENGTH_SHORT 和 Toast.LENGTH_LONG

    //用户点击返回键时触发
    private static final int TIME_INTERVAL = 2000;
    private long mBackPressed = 0;
    public void onBackPressed(){
        long cMills = System.currentTimeMillis();
        if(cMills - mBackPressed > TIME_INTERVAL){//如果两次点击时间间隔超过 TIME_INTERVAL,则执行“提示退出”操作
            mBackPressed = cMills;
            Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show();
        }else{//如果两次点击在 TIME_INTERVAL 时间间隔内,则执行“退出”操作
            super.onBackPressed();
        }
    }

Menu

  • 文件结构:在 main/res/menu 文件夹下创建 bottom_nav_menu.xml。如果没有 menu 文件夹则先创建 menu 文件夹,选中 menu 文件夹,右键进行 “New” --> “Menu resource file”

  创建 bottom_nav_menu.xml 完成。

  • 编辑 bottom_nav_menu.xml 如下:

  • bottom_nav_menu.xml 对应代码:item 标签中主要定义了 id,icon(图标,在 drawable 文件夹中定义),title(标题,在 values/strings.xml 中定义)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:id="@+id/navigation_home"
        android:icon="@drawable/ic_home_black_24dp"
        android:title="@string/title_home" />

    <item
        android:id="@+id/navigation_dashboard"
        android:icon="@drawable/ic_dashboard_black_24dp"
        android:title="@string/title_dashboard" />

    <item
        android:id="@+id/navigation_notifications"
        android:icon="@drawable/ic_notifications_black_24dp"
        android:title="@string/title_notifications" />

</menu>
  • 对应的 drawable 文件,注意文件命名与 xml 配置是对应的

  • 对应的 string 文件,注意strings.xml 与 bottom_nav_menu.xml 配置是对应的

<resources>
    <string name="app_name">HelloWorld</string>
    <string name="title_home">主页</string>
    <string name="title_dashboard">导航</string>
    <string name="title_notifications">通知</string>
</resources>

  

原文地址:https://www.cnblogs.com/zlxyt/p/11125568.html

时间: 2024-08-06 19:05:42

S2. Android 常用控件的相关文章

Android常用控件:进度条

各种进度条属于 ProgressBar的子类 Sytle: 水平风格:Horizontal小风格:Small大风格:Large反向风格:Inverse小反向风格:Small.Inverse大反向风格:Large.Inverse 设置style:   style="?android:attr/progressBarStyle..." 主要属性:最大值:max当前进度:progress次要进度值:SecondaryProgress --效果类似于看电影那些缓冲 判断进度条是转圈还是水平的方

Android 常用控件接口监听

Android控件监听方面,用接口实现监听是最好的,在Android 本身就提供了各种控件监听接口,我们只要按照这样实现,看起来代码会很整洁.实现的效果也是很好的,下面我列举了常用控件的接口监听,layout ,checkbox,RadioGroup,以及listview的单击或者长按监听.下面请看代码,有注释. 本文项目源码地址: 点击此处下载 转载请注明出处: http://blog.csdn.net/qq_16064871 package com.example.impletedemo;

android常用控件

在 Android 中使用各种控件(View) DatePicker - 日期选择控件 TimePicker - 时间选择控件 ToggleButton - 双状态按钮控件 EditText - 可编辑文本控件 ProgressBar - 进度条控件 SeekBar - 可拖动的进度条控件 AutoCompleteTextView - 支持自动完成功能的可编辑文本控件 MultiAutoCompleteTextView - 支持自动完成功能的可编辑文本控件,允许输入多值(多值之间会自动地用指定的

Android常用控件及对应Robotium API

最近发现Android控件不熟悉,看Robotium的API都费劲. 常用Android控件: 控件类型 描述 相关类 Button 按钮,可以被用户按下或点击,以执行?个动作 Button Text field 可编辑的文本区域,可以使用AutoCompleteTextView创建一个带有自动完成功能的编辑文本域 EditText,AutoCompleteTextView Checkbox 复选框,?个可以由用户切换的ON/OFF开关.当提供给用户?组不互斥的可选项时,你应该使用复选框 Che

Android常用控件之下拉刷新Wifi列表

有些列表信息需要手动去更新,此时比较常用的就是下拉刷新列表,在这里就使用下拉列表来刷新当前Wifi信息 目录结构 界面               关键代码 下拉列表类 package com.example.dropdownrefresh.ui; import java.text.SimpleDateFormat; import java.util.Date; import com.example.dropdownrefresh.R; import android.content.Contex

Android常用控件之AutoCompleteTextView、Spinner

概述 1.AutoCompleteTextView:相对于普通的TextView,AutoCompleteTextView的特点是可以自动提示文本,它可以通过SetAdapter()方法加载适配器. 2.Spinner:一种下拉列表. 知识内容 AutoCompletedTextView 布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="

Android常用控件之GridView与ExpandableListView的用法

概述 1.GridView:与ListView相比,可以显示多列,xml布局时其属性numColumns可以设置显示的列数. 2.ExpandableListView:与ListView相比,可以让每一列单元都拥有子列表. 内容 GridView 显示3列和多行的图片以及名称 布局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://sc

android常用控件纪录

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orien

Android常见控件初探

温故而知新.最近复习了一些android常用控件,接下来,根据android 官方API,总结一下它们的一些常见用法.(开发测试环境为Android4.4) 一.TextView 由官方的关系图可以看出,TextView继承View类,直接子类有Button,CheckedTextView等,间接子类有AutoCompleteTextView, CheckBox等. 下面列举一些TextView常见的xml属性: android:text TextView显示的文字 android:textCo