Android笔记——文本框(TextView)
一、常见属性
android:text:文本
android:background: 背景颜色
android:textSize:字体大小,单位用sp
android:textColor:字体颜色
android:layout_gravity:相对父级的位置,控件的对齐方式
android:drawableRight:在右边添加图片,方向也可以是left、right、top、bottom;还可以在activity文件直接添加图片,并控制图片大小
android:drawablepadding:给图片和文字之间添加间隔
二、书写TextView控件
(1)在layout布局文件里面书写TextView
<TextView android:id="@+id/文本框的id" android:layout_width="宽度" android:layout_height="高度" android:text="文字..." 其它样式.../>
如果需要修改特殊样式需要在activity文件修改,不需要直接跳过第二和第三步:
(2)在acitvity文件方法体外声明文本框
private TextView 自定义文本框名字;
(3)在activity文件方法体内通过id找到文本框
自定义文本框名字= (TextView) findViewById(R.id.文本框的id);
注意:所需要的包,可以直接Alt+Enter自动导入
三、使用...代表显示不了的文字的方法
(1)给控件固定的宽度
(2)android:maxLines="整数"
代表最多显示1行
(3)android:ellipsize="end"
在末尾添加"..."
四、制作走马灯特效的简单方法
(1)android:ellipsize="marquee"
设置走马灯显示
(2)android:marqueeRepeatLimit="marquee_forever"
设置重复的次数为永久
(3)android:focusable="true"
获取焦点
(4)android:focusableInTouchMode="true"
可以通过touch获取焦点
(5)android:singleLine="true"
单行显示文字
五、添加中横线或下划线
(1)在layout文件添加控件
<TextView android:id="@+id/自定义的id" android:layout_width="宽度" android:layout_height="高度" android:text="@string/str_test" 各种样式.../>
文本可以书写在strings.xml文件里面
1.书写规则:
<string name="name属性值">文字</string>
2.获取strings.xml中的文字
android:text="@string/name属性值"

(2)在activity文件书写中横线或下划线样式
package com.example.lqh.firstproctect; import android.app.Activity; import android.graphics.Paint; import android.os.Bundle; import android.widget.TextView; public class TextViewActivity extends Activity { private TextView 自定义文本名字; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_view); 自定义文本名字 = (TextView) findViewById(R.id.自定义的id); 自定义文本名字.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);//添加中横线 自定义文本名字.getPaint().setAntiAlias(true);//去掉锯齿 } }
1.STRIKE_THRU_TEXT_FLAG:中横线
2.UNDERLINE_TEXT_FLAG:下划线
(3)也可以通过html添加中横线或下划线
package com.example.lqh.firstproctect; import android.app.Activity; import android.os.Bundle; import android.text.Html; import android.widget.TextView; public class TextViewActivity extends Activity { private TextView text5; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_view); text5 = (TextView) findViewById(R.id.txt_05); text5.setText(Html.fromHtml("<del>TextView</del>")); } }
1.<del></del>:中横线
2.<u></u>:下划线
六、带图片的TextView
可以设置四个方向的图片:drawableTop(上),drawableButtom(下),drawableLeft(左),drawableRight(右)
(1)将准备好的图片放在drawable文件夹里面

(2)在layout布局文件里设置图片,但不能修改图片大小
<TextView android:id="@+id/自定义的id" android:layout_width="宽度" android:layout_height="高度" android:drawableRight="@drawable/图片名称(不包含后缀名)" />
(3)在activity文件里设置图片,可以修改图片大小
package com.example.lqh.firstproctect; import android.app.Activity; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.widget.TextView; public class TextViewActivity extends Activity { private TextView 自定义的文本框名字; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_view); //控制图片的大小 自定义的文本框名字 = (TextView) findViewById(R.id.自定义的id); Drawable drawable = getResources().getDrawable(R.drawable.图片名字); drawable.setBounds(0,0,50,50);//第一个参数是距离左边距离,第二个参数是距离上边距离,第三个参数是长度,第四个参数是宽度 自定义的文本框名字.setCompoundDrawables(null,null,drawable,null);//参数依次为左上右下,这里只设置了右边的图片,所以其它为null } }
七、点击跳转到其它页面
(1)添加新的acrivity文件

(2)取acrivity文件的名字

(3)点击Finish,发现新建的activity的类继承了AppCompatActivity

(4)修改新建的activity文件
创建的类必须继承自android.app.Activity或者其子类
package com.example.lqh.firstproctect; //import android.support.v7.app.AppCompatActivity;导入的包修改为: import android.app.Activity; import android.os.Bundle; public class TextViewActivity extends Activity {//AppCompatActivity修改为“Activity” @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_view); } }
(5)给按钮添加点击事件
package com.example.lqh.firstproctect; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends Activity { private Button 自定义按钮名字;//声明按钮 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); 自定义按钮名字 = (Button) findViewById(R.id.按钮的);//通过id找到按钮 自定义按钮名字.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //跳转到另一个页面 Intent intent = new Intent(当前activity文件名.this, 要跳转到的页面的activity文件名.class); startActivity(intent); } }); } }
TextView练习效果图:

项目链接:https://gitee.com/green-and-red-make-a-white/first-project

浙公网安备 33010602011771号