首页 > 其他 > 详细

1.AS(3.6.1) TextView(设置字的大小/颜色 按钮点击事件 下划线 跑马灯)

时间:2020-03-14 10:12:06      阅读:141      评论:0      收藏:0      [点我收藏+]

  现通过B站搜索了AS初级视频“【天哥】Android开发视频教程最新版 Android Studio开发”学习AS(不是最新),今天对TextView进行了学习。

    1、新建2个emptyActivity,分别命名为MainActivity和TextViewActivity;

  2、activity_main.xml使用线性布局

  (1)设置基本的宽度(layout_width)、高度(layout_heigh)、取向(orientation)等参数;

  (2)放置1个新按钮Button,设置id(btn_textView)/layout_width/layout_heigh/text。

技术分享图片
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
 3 
 4         android:layout_width="match_parent"
 5         android:layout_height="match_parent"
 6         android:orientation="vertical">
 7     <Button
 8         android:id="@+id/btn_textView"
 9         android:layout_width="match_parent"
10         android:layout_height="100dp"
11         android:text="TextView"/>
12 
13 </LinearLayout>
activity_main.xml

 

  

  3、在MainActivity.java中声明Button(private Button mBtnTextView),并在onCreat()中通过findViewById连接控件

  (1)通过setOnClickListener设置按钮点击事件;

  (2)通过new Intent建立两个Activity的连接,并通过startActivity启动。 

技术分享图片
 1 package com.example.helloandroid;
 2 
 3 import android.os.Bundle;
 4 import androidx.appcompat.app.AppCompatActivity;
 5 import android.view.View;
 6 import android.widget.Button;
 7 import android.content.Intent;
 8 import android.widget.TextView;
 9 
10 public class MainActivity extends AppCompatActivity {
11 private Button mBtnTextView;
12     @Override
13     protected void onCreate(Bundle savedInstanceState) {
14         super.onCreate(savedInstanceState);
15         setContentView(R.layout.activity_main);
16         mBtnTextView = findViewById(R.id.btn_textView);
17         mBtnTextView.setOnClickListener(new View.OnClickListener() {
18             @Override
19             public void onClick(View v) {
20                 Intent intent = new Intent(MainActivity.this, TextViewActivity.class);
21                 startActivity(intent);
22             }
23         });
24     }
25 }
MainActivity.java

   

  4、在activity_text_view.xml中使用线性布局

  (1)设置必要的宽度(layout_width)、高度(layout_heigh)、取向(orientation)等参数后,建立TextView;

  (2)"@string/"命名。在strings.xml中创建字符串变量并赋值,在activity_text_view.xml中可通过"@string/变量名"的方式直接使用以便于管理;

 
  5、在TextViewActivity.java中通过setFlags对TextView设置下划线/中划线"。

  6、设置跑马灯

  (1)必要设置:在activity_text_view.xml与跑马灯相关的TextView中进行如下设置:

  android:singleLine="true"//单行显示
  android:ellipsize="marquee"//设置为跑马灯
  android:marqueeRepeatLimit="-1"//循环次数
  android:focusable="true"//键盘状态下获得焦点
  android:focusableInTouchMode="true"//触屏状态下获得焦点

  (2)在TextViewActivity.java声明建立与跑马灯相关的空间,并执行“.setSelected(true)”。(视频中未讲解,谢谢弹幕)  

技术分享图片
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical"
 6     android:padding="24dp">
 7     <TextView
 8         android:id="@+id/tv_1"
 9         android:layout_width="wrap_content"
10         android:layout_height="wrap_content"
11         android:text="@string/text_view1"
12         android:textColor="#000000"
13         android:textSize="24sp"/>
14     <TextView
15         android:id="@+id/tv_2"
16         android:layout_width="50dp"
17         android:layout_height="wrap_content"
18         android:maxLines="1"
19         android:ellipsize="end"
20         android:text="@string/text_view2"
21         android:textColor="#000000"
22         android:textSize="24sp"
23         android:layout_marginTop="10dp"/>
24     <TextView
25         android:id="@+id/tv_3"
26         android:layout_width="wrap_content"
27         android:layout_height="wrap_content"
28         android:text="@string/text_view3"
29         android:textColor="#000000"
30         android:textSize="24sp"/>
31     <TextView
32         android:id="@+id/tv_4"
33         android:layout_width="wrap_content"
34         android:layout_height="wrap_content"
35         android:text="@string/text_view4"
36         android:textColor="#000000"
37         android:textSize="24sp"/>
38     <TextView
39         android:id="@+id/tv_5"
40         android:layout_width="wrap_content"
41         android:layout_height="wrap_content"
42         android:text="@string/text_view5"
43         android:textColor="#000000"
44         android:textSize="24sp"/>
45     <TextView
46         android:id="@+id/tv_6"
47         android:layout_width="wrap_content"
48         android:layout_height="wrap_content"
49         android:text="@string/text_view6"
50         android:singleLine="true"
51         android:ellipsize="marquee"
52         android:marqueeRepeatLimit="-1"
53         android:focusable="true"
54         android:focusableInTouchMode="true"
55         android:textColor="#000000"
56         android:textSize="24sp"/>
57 
58 </LinearLayout>
activity_text_view.xml

 

技术分享图片
 1 package com.example.helloandroid;
 2 
 3 import androidx.appcompat.app.AppCompatActivity;
 4 import android.os.Bundle;
 5 import android.text.Html;
 6 import android.widget.TextView;
 7 import android.graphics.Paint;
 8 
 9 public class TextViewActivity extends AppCompatActivity {
10     private TextView mTv3;//声明
11     private TextView mTv4;
12     private TextView mTv5;
13     private TextView mTv6;
14     @Override
15     protected void onCreate(Bundle savedInstanceState) {
16         super.onCreate(savedInstanceState);
17         setContentView(R.layout.activity_text_view);
18 
19         mTv3 = (TextView)findViewById(R.id.tv_3);//与控件进行连接
20         mTv3.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);//设置中划线
21 
22         mTv4 = (TextView)findViewById(R.id.tv_4);//与控件进行连接
23         mTv4.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//设置下划线
24 
25         mTv5 = (TextView)findViewById(R.id.tv_5);//与控件进行连接
26         mTv5.setText(Html.fromHtml("<u>下划线</u>"));
27 
28         mTv6 = (TextView)findViewById(R.id.tv_6);//与控件进行连接
29         mTv6.setSelected(true);
30     }
31 }
TextViewActivity.java

 

技术分享图片
1 <resources>
2     <string name="app_name">HelloAndroid</string>
3     <string name="text_view1">HelloWorld</string>
4     <string name="text_view2">HelloAndroid</string>
5     <string name="text_view3">中划线</string>
6     <string name="text_view4">下划线</string>
7     <string name="text_view5">下划线</string>
8     <string name="text_view6">跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯跑马灯</string>
9 </resources>
strings.xml

 

技术分享图片
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 3     package="com.example.helloandroid">
 4 
 5     <application
 6         android:allowBackup="true"
 7         android:icon="@mipmap/ic_launcher"
 8         android:label="@string/app_name"
 9         android:roundIcon="@mipmap/ic_launcher_round"
10         android:supportsRtl="true"
11         android:theme="@style/AppTheme">
12         <activity android:name=".MainActivity">
13             <intent-filter>
14                 <action android:name="android.intent.action.MAIN" />
15 
16                 <category android:name="android.intent.category.LAUNCHER" />
17             </intent-filter>
18         </activity>
19         <activity android:name=".TextViewActivity"></activity>
20     </application>
21 
22 </manifest>
AndroidManifest.xml

 

  7、模拟器显示:

 技术分享图片技术分享图片

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*注:如果不想保留模拟器之前的App或希望每次从系统默认主界面运行程序,可将App删除或退出当前运行的程序。

1.AS(3.6.1) TextView(设置字的大小/颜色 按钮点击事件 下划线 跑马灯)

原文:https://www.cnblogs.com/programmeAdvance/p/12490256.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!