2023年7月13日发(作者:)
seekbar垂直放置_android基础控件(EditView、SeekBar等)的属性。。。博客逐步迁移⾄ 极客兔兔的⼩站android提供了⼤量的UI控件,本⽂将介绍TextView、ImageView、Button、EditView、ProgressBar、SeekBar、ScrollView、WebView的使⽤⽅法。在介绍各种控件之前,先简单介绍android UI控件最基本的⼏种属性:id: id是控件唯⼀标识符,可通过findViewById(.*)操作控件。layout_width:控件宽度,可设置为match_parent(充满⽗布局,即让⽗布局决定当前控件的宽度)、wrap_content(恰好包住⾥⾯的内容)、具体值(⼀般以dp作为单位)。layout_width:控件⾼度,可设置为match_parent、wrap_content、具体值。visibility:可见与否,有三个可选值:visible(可见,不设置该属性为默认值)、invisible(透明,仍在屏幕上占据空间)、gone(不可见,不占据空间)。ew(⽂本)TextView可以说是最简单的控件了。1.1 基本属性android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical">android:id="@+id/text"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:textSize="30sp"android:textColor="#334433"android:text="@string/app_name"/>text: text属性即显⽰出来的⽂字,@string/app_name表⽰引⽤资源⽂件res/values/中的app_name,也可以直接写内容。UIExampleMainActivitygravity: 对TextView中内容位置的设定,可选值为top、bottom、left、right、center等。可以为多个值,例如希望⽂字位于该TextView的右下⾓,设置为gravity="right|bottom",⽤ | 隔开textSize与textColor ⽂字⼤⼩与颜⾊。id: 这⾥⽤了"@+id/text",表⽰给id分配⼀个唯⼀标识符text,与引⽤类似,多了⼀个+。1.2 定义style假如上⾯的样式是标题的样式,且被重复使⽤多次。如果每个标题都这样定义样式,不但增加⼯作量,⽽且会使⽤修改变得很困难,这种情况下,将style抽象出来能解决这个问题。这与Web开发中CSS的作⽤如出⼀辙。...#33443330spcenterandroid:id="@+id/text"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/app_name"style="@style/TextTitle"/>1.3 动态操作// 使⽤代码动态设置TextView中的⽂本内容public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {te(savedInstanceState);setContentView(ty_main);// 通过findViewById,获取TextView的实例。// 使⽤setText()与getText()赋值和取值。TextView textView = (TextView) findViewById();t("Hello World!");Log.d("MainActivity",t().toString());}}iew(图⽚)有⽂本,⾃然少不了图⽚。android:id="@+id/image"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/test_image"/>id: 若不在java代码中动态操作,id属性可以省略。src: 即定义显⽰的图⽚,将需要加载的图⽚放置在 res/drawable/⽬录下即可。// 调⽤setImageResource()⽅法即可。// 需要加载的图⽚复制到 res/drawable/ ⽬录下。ImageView imageView = (ImageView) findViewById();geResource(_image2);(按钮)3.1 基本样式android:id="@+id/button_1"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="I Am A Button"/>text: text即按钮上的提⽰内容3.2 点击事件3.2.1 为点击事件注册监听器// 第12⾏,注册监听器OnClickListener,复写onClick()函数。public class MainActivity extends Activity {private TextView textView;@Overrideprotected void onCreate(Bundle savedInstanceState) {te(savedInstanceState);setContentView(ty_main);textView = (TextView) findViewById();Button button = (Button) findViewById(_1);lickListener(new kListener() {@Overridepublic void onClick(View v) {// ... 省略点击事件// 例如:t("Hello World");}});}}3.2.2 实现接⼝OnClickListener// 第14⾏,将点击事件绑定到 this// 第17⾏,复写接⼝OnClickListener的onClick()⽅法// java中只能继承⼀个类,接⼝可以看作java的多继承⽅式public class MainActivity extends Activity implements kListener{private TextView textView;@Overrideprotected void onCreate(Bundle savedInstanceState) {te(savedInstanceState);setContentView(ty_main);textView = (TextView) findViewById();Button button = (Button) findViewById(_1);lickListener(this);}@Overridepublic void onClick(View view){// 根据id判断,若⼀个活动中有多个控件需绑定点击事件// 使⽤该⽅式,该⽅法简洁直观switch (()){case _1:// ... 省略点击事件// 例如:t("Hello World!");break;default:break;}}}xt(输⼊框)4.1 基本样式android:id="@+id/edit"android:layout_width="match_parent"android:layout_height="wrap_content"android:maxLines="3"android:hint=""/>maxLines: 指定输⼊框的最⼤⾏号为3⾏,超过3⾏后,⽂本将向上滚动,EditText不会继续被拉伸。如果不指定,EditText将随着输⼊内容的增加⽽被拉伸。hint: 类似Html中的placeholder,⽤于输⼊框的提⽰。4.2 获取输⼊内容// 点击按钮,打印输⼊的内容。public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {// ...Button button = (Button) findViewById(_1);final EditText editText = (EditText) findViewById();lickListener(new kListener() {@Overridepublic void onClick(View v) {// 使⽤ getText()⽅法获取editText的内容String input_text = t().toString();Log.d("MainActivity",input_text);}});}}ssBar(进度条)5.1 圆形进度条android:id="@+id/progress_bar"android:layout_width="match_parent"android:layout_height="wrap_content"android:visibility="gone"/>visibility: visible(可见)、invisible(透明,占据空间)、gone(不可见,不占据空间),初始值设置为不可见。// ⼀般⽐较耗时的⼯作,会暂时显⽰进度条,⼯作完成后,进度条消失// 以下代码模拟该过程public class MainActivity extends Activity implements kListener{private ProgressBar progressBar;@Overrideprotected void onCreate(Bundle savedInstanceState) {// ...Button button = (Button) findViewById(_1);progressBar = (ProgressBar) findViewById(ss_bar);lickListener(this);}@Overridepublic void onClick(View view) {switch (()){case _1:// 点击按钮后,如果当前状态可见,则变为不可见// 如不可见,则变为可见if(ibility() == ) {ibility(E);} else {ibility();}break;default: break;}}}效果如图:5.2 ⽔平进度条android:id="@+id/progress_bar"android:layout_width="match_parent"android:layout_height="wrap_content"android:max="100"style="@style/ntal"/>style: 设置style为⽔平样式,其他样式可以⾃⼰尝试。// 将onClick() 改为@Overridepublic void onClick(View view) {switch (()){case _1:// 获取当前进度值,每次点击进度值+10int progress = gress();gress(progress + 10);default: break;}}点击三次,效果如图:r(滑动条)6.1 基本样式android:id="@+id/seek_bar"android:layout_width="match_parent"android:layout_height="wrap_content"android:max="100"android:progress="50"/>android:id="@+id/text"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"/>max: 滑动条的最⼤值,设置为 100progress: 初始化滑动条的值,设置为 50效果如图:6.2 注册滑动监听器public class MainActivity extends Activity {private TextView textView;@Overrideprotected void onCreate(Bundle savedInstanceState) {te(savedInstanceState);setContentView(ty_main);textView = (TextView) findViewById();SeekBar seekBar = (SeekBar) findViewById(_bar);// 设置滑动监听器,复写三个事件函数,分别是值改变、开始滑动、结束滑动eekBarChangeListener(new BarChangeListener() {@Overridepublic void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {if(fromUser){// ⽤户主动滑动,值改变时触发该事件t("⽤户正在滑动,当前值:" + progress);}}@Overridepublic void onStartTrackingTouch(SeekBar seekBar) {Log.d("MainActivity","开始滑动时触发该事件");}@Overridepublic void onStopTrackingTouch(SeekBar seekBar) {Log.d("MainActivity","结束滑动时触发该事件");}});}}iew(可滚动视图)android:layout_width="wrap_content"android:layout_height="wrap_content">android:id="@+id/text"android:layout_width="match_parent"android:layout_height="wrap_content"/>当TextView的内容过多时(⼀页显⽰不完),这时使⽤ScrollView可以使页⾯变为可垂直滚动模式,垂直滚动看完所有内容。w(浏览器)android:id="@+id/web_view"android:layout_width="match_parent"android:layout_height="match_parent"/>在中加⼊访问⽹络的权限...public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {te(savedInstanceState);setContentView(ty_main);WebView webView = (WebView) findViewById(_view);// 允许执⾏tings().setJavaScriptEnabled(true);// 设置代理,复写shouldOverrideUrlLoading函数ViewClient(new WebViewClient(){@Overridepublic boolean shouldOverrideUrlLoading(WebView view,String url){l(url); //加载⽹页return true; //true表⽰使⽤当前WebView打开⽹页,不使⽤系统浏览器}});// 使⽤webView打开博客园l("/gzdaijie");}}运⾏程序,类似于⼀个打开了⽹页的浏览器,只是缺少⽹址输⼊框。
发布者:admin,转转请注明出处:http://www.yc00.com/web/1689216689a222369.html
评论列表(0条)