Android 入门第三讲01-Activity的简单逻辑操作(对文本,图片进行设置(两种获取控件的方法),按钮点击-点击按钮打印日志,获取文本框的值+计算器简易案例)
2020-07-11 01:01
232 查看
Android 入门第三讲01-Activity的简单逻辑操作((对文本,图片进行设置(两种获取控件的方法),按钮点击-点击按钮打印日志,获取文本框的值+计算器简易案例)
Android 入门第二讲05-熟悉as项目文件(manifest,res,build.gradle)+控件可见性+ScrollView+View 和ViewGroup总结
1.Activity的概念
对页面的逻辑操作
举例:
- qq个人资料activity可以改变文本的内容
- 登录界面activity事件响应,获取输入控件值
- activity可以添加点击事件实现activity对应界面之间的跳转和传值,如下 (界面跳转和文本内容改变了 )
2.Activity对UI逻辑进行操作
1.对文本,图片进行设置(两种获取控件的方法)
不加activity代码运行
1.通过activity代码修改以后(普通写法)
activity核心代码
//怎么修改TextView的值? 1.要先拿到对象的引用 通过findviewbyid TextView textView=findViewById(R.id.text); textView.setText("今天也要加油鸭!");//修改文本内容 textView.setTextSize(24);//修改文本字体大小 textView.setTextColor(getResources().getColor(R.color.colorAccent));//修改文本颜色
对图片进行设置
核心代码
ImageView imageView=findViewById(R.id.imageView); imageView.setImageDrawable(getResources().getDrawable(R.drawable.rose));
2.这里介绍一种新写法,是自从as3.6版本以后出现的新技术
1.首先在build.gradle(app)里面加一句
viewBinding{ enabled=true }
然后activity的java代码可以这样写(效果一样)
核心代码
ActivityMainBinding binding=ActivityMainBinding.inflate(getLayoutInflater()); setContentView(binding.getRoot()); binding.textView.setText("今天也要加油鸭"); binding.textView.setTextColor(getResources().getColor(R.color.colorAccent)); binding.textView.setTextSize(24);
2.按钮点击事件
点击事件代码讲解(上面是重写onClick方法,下面是采用匿名内部类 效果一样)
三种触发事件方式
点击按钮打印日志
方法一 System.out.println(“打印内容”);
方法二 Log.i(“标签名字”,“打印内容”);(括号内灰色部分不用写,会自动生成)
方法三(应用内打印)
activity核心代码
Button button=findViewById(R.id.button); // button.setOnLongClickListener();//长按触发事件 // button.setOnTouchListener();//滑动触发事件 // button.setOnClickListener()//点击触发事件 //为什么这里可以new一个接口 button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // System.out.println("点击了一次"); // Log.i("onclick","点击了一次"); Toast.makeText(MainActivity.this,"点击了一次",Toast.LENGTH_LONG).show(); } });
3.获取文本框的值,传递对象类型(应用举例:qq登录密码账号的输入)
获取文本值
核心代码
final EditText editText=findViewById(R.id.editText); Toast.makeText(MainActivity.this,"点击了一次"+editText.getText().toString(),Toast.LENGTH_LONG).show();
计算器简易案例实现
activity代码
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button=findViewById(R.id.button2); final EditText editText=findViewById(R.id.editText3); final EditText editText2=findViewById(R.id.editText4); final TextView textView=findViewById(R.id.textView3); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { int num1= Integer.parseInt(editText.getText().toString()); int num2= Integer.parseInt(editText2.getText().toString()); textView.setText((num1+num2)+""); } }); } }
为什么要加final----因为在一个匿名内部类方法要引用方法外面的变量,需要加final
xml代码
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <EditText android:id="@+id/editText3" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="20dp" android:layout_marginLeft="20dp" android:layout_marginTop="49dp" android:layout_marginEnd="19dp" android:layout_marginRight="19dp" android:ems="10" android:inputType="textPersonName" app:layout_constraintEnd_toStartOf="@+id/editText4" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="20dp" android:layout_marginLeft="20dp" android:layout_marginEnd="20dp" android:layout_marginRight="20dp" android:text="+" android:textSize="24sp" app:layout_constraintBottom_toBottomOf="@+id/editText4" app:layout_constraintEnd_toStartOf="@+id/editText4" app:layout_constraintStart_toEndOf="@+id/editText3" app:layout_constraintTop_toTopOf="@+id/editText4" /> <EditText android:id="@+id/editText4" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginEnd="212dp" android:layout_marginRight="212dp" android:ems="10" android:inputType="textPersonName" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@+id/editText3" app:layout_constraintTop_toTopOf="@+id/editText3" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginLeft="10dp" android:text="=" app:layout_constraintStart_toEndOf="@+id/editText4" app:layout_constraintTop_toTopOf="@+id/editText4" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginLeft="10dp" android:layout_marginBottom="9dp" android:text="0" android:textSize="24sp" app:layout_constraintBottom_toBottomOf="@+id/button2" app:layout_constraintStart_toEndOf="@+id/button2" /> </androidx.constraintlayout.widget.ConstraintLayout>
本讲的内容就是这些啦,谢谢您的阅读,下一讲主要讲activity之间的跳转,(这个很重要哦),期待您的再次光顾。
Android 入门第三讲02-Activity之间的跳转与传值(Activity的创建+跳转+关闭,Activity的任务栈,Activity跳转传递数据(普通数据+对象类型)+数据回传,)
相关文章推荐
- Android 入门第五讲02-QQ主界面demo(内附免费源码)(网络图片,圆形图片,RecyclerView点击事件,下拉刷新,上拉加载,开源控件的使用,底部按钮的样式切换)
- 实现点击按钮获取和设置edit文本的方法
- 关于Android App上线后从应用市场点击打开按钮进入应用后进行操作后,再点击home键到桌面后点击启动图标重新打开应用的解决方法
- 获取android 手机屏幕的大小以及动态设置背景图片的两种方法;
- 写一个方法进行各种属性的更新,而不要每个界面设置改变都改变一个属性。就是点击应用或确定按钮时调用这个更新属性的方法,遍历所有(控制对象属性的)界面控件的状态(值),进行属性修改和刷新。
- android中在Activity中响应ListView内部按钮的点击事件的两种方法
- Android 入门笔记——按钮响应事件设置的两种方法
- 异或加密法 在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。 解密的方法就是再执行一次同样的操作。
- android开发中设置按钮的点击或获取焦点效果
- QT中获取选中的radioButton的两种方法(动态取得控件的objectName之后,对名字进行比较)
- Android ListView 中子控件无法获取焦点的解决方法(主要针对键盘操作)
- 用android做的一个简单的点击按钮显示图片的程序
- Android简易实战教程--第二十七话《自定义View入门案例之开关按钮详细分析》
- 获取Android Activity两种方法
- 获取图片控件按钮点击事件
- Android 获取手机中的图片信息的两种方法
- 设置点击文本框或图片弹出日历控件的实现代码
- android两种使用照相功能获取图片的方法
- Android代码中设置图片,文本自定义颜色,Linearlayout等控件设置背景
- Android实现EditText文本的输入,通过点击按钮,获取输入的内容