安卓b站学习笔记梳理2020.11.24
天哥在奔跑安卓教程b站网址https://www.bilibili.com/video/BV1Rt411e76
目录
③android:layout_alignBottom="true"
④android:layout_alignParentRight="true"
⑥添加Activity并添加Button设置监听事件进行跳转
⑦app->src->main->res->values->strings.xml
1.第一个安卓应用
①MainActivity
package com.jz.application1;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
②activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:id="@+id/l1_1"
android:layout_width="200dp"
android:layout_height="200dp"
android:orientation="vertical"
android:background="#000000"
android:paddingLeft="20dp"
android:paddingRight="10dp"
android:paddingBottom="5dp"
android:layout_marginBottom="20dp">
<View
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF0033"/>
</LinearLayout>
</LinearLayout>
③AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.jz.application1">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
2.线性布局LinearLayout
①android:id
②android:layout_width
③android:layout_height
④android:orientation
垂直或者水平
⑤android:backgroud
背景颜色
⑥android:padding
内间距
⑦android:layout_margin
外距 例android:layout_marginLeft="10dp" 左边间隔10dp
⑧android:gravity
android:gravity="center_horizontal"(在布局中加入表示内容水平中心)
android:layout_gravity="end"(在内容中加入表示这个内容在布局的尾部)
⑨match_parent
⑩android:weight
注意定义值和权重的先后
3.相对布局
①android:toLeftOf
android:layout_toLeftOf="@id/view_1"(在view1左边)
②android:toRightOf
android:layout_toRightOf="@id/view_1"(在view1右边)
③android:layout_alignBottom="true"
和父空间底部对齐
④android:layout_alignParentRight="true"
和父空间右部对齐
⑤android:layout_below
android:layout_below="@id/view_2"(在view_2下面)
4.TextView
①文字大小,颜色
android:textSize="35sp"
android:textColor="#000000"
②显示不下使用...
android:maxLines="1"(限制行数)
android:ellipsize="end"(点点点...)
③文字+icon
android:drawableRight
android:drawableRight="@drawable/next"(图片在文字右边)
android:drawablePadding="5dp"(文字与图片间隔5dp)
但icon大小尺寸怎么设置.....
④中划线、下划线
中划线要在TextViewActivity.java文件里面写,同样先在class TextViewActivity中注册TexView,然后在onCreate()里面加入代码,以下是中划线代码
private TextView mTv4;(注册)
mTv4 = findViewById(R.id.tv_4);//绑定
mTv4.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);//中划线
mTv4.getPaint().setAntiAlias(true);//去除锯齿
下面是下划线代码
mTv5 = findViewById(R.id.tv_5);
mTv5.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);
用HTML的下划线代码
mTv6 = findViewById(R.id.tv_6);
mTv6.setText(Html.fromHtml("<u>ganggang run !!</u>"));
⑤跑马灯
android:text="gangganggangganggangganggangganggangganggang"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:focusable="true"
android:focusableInTouchMode="true"
android:singleLine="true"
经过测试发现仅仅用这个做不了跑马灯,好像是焦点的问题,去活动页面加入以下代码就可以了
mTv7 = findViewById(R.id.tv_7); mTv7.setSelected(true);
⑥添加Activity并添加Button设置监听事件进行跳转
- File->New->activity->empty activity
- (自动完成)AndroidManifest.xml中注册
<activity android:name=".TextViewActivity"></activity>
- 在activity_main.xml中添加Button(注意此处id)
<Button android:id="@+id/btn_textview" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="TextView" />
- 在MainActivity.java(原页面中)的MainActivity中注册Button
private Button mBtnTextView;
- 绑定Button(这里的button等于前面的id)
mBtnTextView = findViewById(R.id.btn_textview);
- 设置监听事件
mBtnTextView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //jump to TextView show interface Intent intent = new Intent(MainActivity.this,TextViewActivity.class); startActivity(intent); } });
- 总public class MainActivity 代码如下
public class MainActivity extends AppCompatActivity { private Button mBtnTextView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mBtnTextView = findViewById(R.id.btn_textview); // 没报错了就不用了 // mBtnTextView = (Button)findViewById(R.id.btn_textview); mBtnTextView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //jump to TextView show interface Intent intent = new Intent(MainActivity.this,TextViewActivity.class); startActivity(intent); } }); } }
⑦app->src->main->res->values->strings.xml
添加常用字符串
<resources>(添加)
<string name="app_name">Application1</string>
<string name="tv_test">ganggang is running</string>
</resources>
android:text="@string/tv_test"(引用)
⑧app->res->drawable导入图片位置
选中图片复制到这里即可