感谢 herr_kun 大神的帖子,本文参考该大神的这篇帖子修改而成,添加了一些自己的理解和注意事项。
1、要完成的功能如下
image.png描述:
1、在输入栏输入文字后点击修改按钮后,上面的哈哈会变成修改的文字。
2、点击放大按钮,刚才修改的字体变大。点的越多,字变越大
2、新建一个项目后打开两个文件,后续只在这两文件上操作
image.png第一个文件是功能代码文件,写的java功能代码都放在这里。
第二个是视图文件,界面长什么样就放在这里了。
3、先打开视图文件,修改界面
你可以使用Design可视化修改界面,也可以使用Text,在代码里修改,图省事的哈可以复制我的布局代码。如下
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout 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">
<Button
android:id="@+id/confim"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/name"
android:layout_marginStart="-83dp"
android:layout_marginTop="-101dp"
android:layout_toEndOf="@+id/name"
android:layout_x="284dp"
android:layout_y="482dp"
android:text="修改"
tools:layout_editor_absoluteX="281dp"
tools:layout_editor_absoluteY="434dp"
android:onClick="display"/>
<!--Design创建的布局需要手动添加上面这行代码android:onClick="display",其实就是添加一个事件
当按钮按下的时候做这个函数里的事,函数写在另外一个文件里
-->
<EditText
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:layout_marginEnd="111dp"
android:layout_marginBottom="56dp"
android:layout_x="53dp"
android:layout_y="481dp"
android:ems="10"
android:inputType="textPersonName"
android:text="名字输入栏"
tools:layout_editor_absoluteX="66dp"
tools:layout_editor_absoluteY="434dp" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginTop="149dp"
android:layout_toEndOf="@+id/confim"
android:layout_x="111dp"
android:layout_y="419dp"
android:text="放大"
tools:layout_editor_absoluteX="161dp"
tools:layout_editor_absoluteY="333dp"
android:onClick="bigger"/>
<!--Design创建的布局需要手动添加上面这行代码 android:onClick="bigger",其实就是添加一个事件
当按钮按下的时候做这个函数里的事,函数写在另外一个文件里
-->
<TextView
android:id="@+id/txv"
android:layout_width="109dp"
android:layout_height="59dp"
android:layout_alignParentBottom="true"
android:layout_marginEnd="207dp"
android:layout_marginRight="207dp"
android:layout_marginBottom="265dp"
android:layout_x="165dp"
android:layout_y="241dp"
android:text="哈哈"
app:layout_constraintEnd_toEndOf="parent"
tools:layout_editor_absoluteY="242dp" />
</AbsoluteLayout>
上面做完界面就出来了。
image.png
4、下面为两个按键添加点击事件。
在java文件中添加如下代码
image.png
代码如下
package com.example.leaf.myapplication;
//上面这行我跟你可能不一样,用你自己的
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
int size=30;
public void bigger(View v){ // 放大按钮点击事件,函数的名称要个布局文件里的一样
TextView txv;
txv= (TextView) findViewById(R.id.txv); // 根据ID找到对应的text对象
txv.setTextSize(++size); // 修改对象的字符大小-size
}
public void display(View v){ // 另外一个按钮对应的 onclick 响应
EditText name= (EditText) findViewById(R.id.name); //还是根据ID找到对象,并进行接下来的操作
TextView text2= (TextView) findViewById(R.id.txv);
text2.setText(name.getText().toString()); // 设置字符
}
}
网友评论