• Android开发工程师文集-相关控件的讲解,五大布局


    前言

    大家好,给大家带来Android开发工程师文集-相关控件的讲解,五大布局的概述,希望你们喜欢

    TextView控件

    TextView控件有哪些属性:

    android:id->控件的id
    android:layout_width->控件的宽度
    android:layout_height->控件的高度
    android:text->文本内容
    android:textSize->文本的大小
    android:textColor->文本的颜色
    android:background->控件的背景,可设置颜色或图片
    

    EditText控件

    EditText控件有哪些属性:

    android:id->
    android:layout_
    android:layout_height:
    android:text:
    android:textSize:
    android:textColor:
    android:background:
    //
    android:hint->输入提示
    android:inputType->输入的类型
    

    设置颜色

    1. 在xml中是android:textColor
    2. 在Activity中是setTextColor

    AutoCompleteTextView

    AutoCompleteTextView为控件自动显示输入文本时出现的提示信息。
    相关属性:android:completionThreshold="2"

    示例代码:

    private String[] strings={ "数据1","数据2",....};
    //初始化控件
    //需要适配器
    //初始化数据源
    //adpter-autocompleteTextView
    autocompleteTextView = findViewById(R.id.autocompleteTextView);
    ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,strings);
    autocompleteTextView.setAdapter(adapter);
    

    MultiAutoCompleteTextView

    主要为可多选择值而已。
    这里主要用分隔符,可输入多个值

    multiAutoCompleteTextView = findViewById(R.id.multiAutoCompleteTextView);
    multiAutoCompleteTextView.setAdapter(adapter);
    

    注意要设置分隔符

    multiAutoCompleteTextView.setTokenizer(new multiAutoCompleteTextView.CommaTokenizer());
    

    ToggleButton

    这个ToggleButton有两种状态,一种是被选中,一种是没有被选中。

    可以理解为是电灯的开关效果,该属性有:

    android:checked="true"
    android:textOff="off"
    android:textOn="on"
    

    主要实现的方法:

    @Override
    public void onCheckedChanged(CompoundButton, buttonView, boolean isChecked){
     //图片的切换
     imgpicture.setBackgroundResource(isChecked?R.drawable.one:R.drawable.two);
    }
    

    Intent跳转

    1. startActivity(intent);
    2. startActivityForResult(intent,requestCode);
    onActivityResult();//MainActivity
    onResult();
    

    接下来只学startActivityForresult():

    Intent intent = new Intent(MainActivity.this,SecondActivity.class);
    startActivityForResult(intent,1);
    

    同在MainActivity中创建onActivityResult()方法:
    接收返回来的数据

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data){
     super.onActivityResult(requestCode, resultCode, data);
    }
    

    那么在SecondActivity中创建onResult()的方法:
    回传Intent的对象,回传数据

    Intent data=new Intent();
    data.putExtra("data",name);
    setResult(2,data);
    

    在MainActivity中的onActivityResult():

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data){
     super.onActivityResult(requestCode, resultCode, data);
      if(requestCode == 1 && resultCode == 2){
      String name = data.getStringExtra("data");
      tv.setText(name);
    }
    

    四大组件

    Android的四大组件

    • Activity
    • Service
    • BroadcastReceiver
    • Content Provider

    再次学习一下activity的生命周期

    • onCreate();
    • onStart();
    • onResume();
    • onPause();
    • onStop();
    • onDestroy();
    • onRestart();

    activity的四种状态:

    1. 活动状态
    2. 暂停状态
    3. 停止状态
    4. 销毁状态

    一个activity的一生:

    onCreate()->onStart()->onResume()->onPause()->onStop()->onDestroy()

    启动到后台再前台:

    onCreate()->onStart()->onResume()->onPause()->onStop()->onRestart()->onStart()->onResume()

    设置个小窗口的启动模式周期:

    onResume()为获取焦点
    onPause()为失去焦点

    onCreate()->onStart()->onResume()->onPause()->onResume()

    CheckBox与RadioButton

    //核心
    if(isChecked){
     String text = checkBox.getText().toString();
    }
    

    这里讲RadioButton,注意RadioGroup就行。

    //核心
    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId){
     switch(checkedId){
     case R.id.button1:
     break;
     case R.id.button2:
     break;
     default:
     }
    }
    

    当然这里你也可以用RadioButton来监听,但是个人认为RadioGroup比较方便吧!

    五大布局

    LinearLayout:

    android:orientation=""
    1. vertical
    2. horizontal
    android:gravity=""
    center,bottom,left,right
    android:layout_gravity=""
    android:layout_weight=""
    //android:layout_height="match_parent"的比例为反,用android:layout_weight=""的话
    
    1. layout_gravity调整该布局相对父布局的位置
    2. gravity是调整该布局中子布局的位置
    3. 水平的LinearLayout要从左边开始依次放置布局
      4.layout_gravity只有在LinearLayout布局中

    RelativeLayout:
    相对布局,我们只要知道相应的属性就行:

    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    
    android:layout_centerInParent="true"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    
    android:layout_marginLeft="50dp"
    android:layout_marginBottom="50dp"
    
    android:layout_toRightOf="@+id/button1"
    android:layout_toLeftOf="@+id/button2"
    android:layout_below="@+id/button1"
    //
    android:layout_alignBaseline="@+id/button1"
    
    android:gravity=""
    

    这些根据英文意思就了解了。

    FrameLayout:
    先放的在下面,都在左上方。

    AbsoluteLayout:

    android:layout_x="50dip"
    android:layout_y="50dip"

    TableLayout:

    TableRow-View

    重要的属性:

    //都是从0开始的索引列
    android:collapseColumns="1,2"//隐藏
    android:shrinkColumns="1,2"//收缩
    android:strechColumns="1,2"//拉伸
    
    android:layout_column="1"//显示在第二列
    android:layout_span="2"//这个表示一个空间占据两列
    

    如果觉得不错,那就点个赞吧!❤️

    总结

    • 本文讲了Android开发工程师文集-相关控件的讲解,五大布局,如果您还有更好地理解,欢迎沟通
    • 定位:分享 Android&Java知识点,有兴趣可以继续关注
  • 相关阅读:
    zsh设置显示路径
    mysql性能优化
    php实现网络请求的方法及函数总结
    AI面试机器人后端架构实践
    Python脚本遍历文件夹,检查文件版本是否存在
    将 VS Code 终端设置为始终以管理员权限打开
    python20220623
    python20220625
    ss命令详解
    python20220624
  • 原文地址:https://www.cnblogs.com/dashucoding/p/9281502.html
Copyright © 2020-2023  润新知