android组件之TextView
想学习android很久了,也看了很多的资料和视频,但是总结一点学习任何语言都不是去被动的吸收知识,而要主动的学习。何为主动的学习,做IT这一行的就是要自己主动的敲代码,敲代码敲着敲着你就有了感情,你就会不知不觉的理解了。当你用代码实现的有结果的具体的理解要比别人在哪给你讲的抽象的被动的吸收要来的直接要好。所以我准备通过自己不断的敲,去不断的学习。这系列文件旨在记录自己的学习工程,也为了巩固自己学习的知识。好了,从现在开始吧,Just do it。。。
TextView 是android中的最基础也是最终要的组件。
先来看看效果,实现的效果是新建一个文本框,并是文本框中的文字实现向下滚动的效果
string.xml文件:
在string.xml文件中加入你自己想显示的string,
- <?xml version="1.0" encoding="utf-8"?>
- <resources>
- <string name="app_name">TextViewProject</string>
- <string name="hello_world">
- Hello world!
- 想实现textview上下滑动的功能,也确实做到了,但是效果不尽如人意,具体是这样的: 发现textview添加上setMovementMethod这个方法后,上下滑动的时候背景就会变灰,
- 手抬起后就又回复正常,当然也并不是所有机型都有这种情况,我测了7部手机,发现只有moto(Me525 android2.2)跟三星(GT-N700 android2.3)的机子上不会出现这种情况,
- 其他机型(中兴(4.0.3),htc G8(2.3),htc G7(4.0),三星galaxy nexus(4.0.4) )谁知道这是什么原因呢 因为这里不能插入图片,所以想看效果的去这里
- </string>
- <string name="menu_settings">Settings</string>
- </resources>
layout中的main.xml文件
在布局文件中加入一个文本框
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- tools:context=".TextViewActivity" >
- <TextView //添加一个文本框
- android:id="@+id/myTextView"
- android:layout_width="fill_parent" //设置文本框的宽度是手机屏幕的宽度
- android:layout_height="fill_parent" //高度的手机的屏幕的高度
- android:textSize="30dp" //设置文本的内容字体大小
- android:scrollbars="vertical" //设置滑条是水平还是垂直的,这里是设置为垂直的
- android:text="@string/hello_world" /> //设置文本的内容,就是我们刚刚加如的文本的内容
- </RelativeLayout>
TextViewActivity.java文件
- package com.cheng.textviewproject;
- import android.os.Bundle;
- import android.app.Activity;
- import android.text.method.ScrollingMovementMethod;
- import android.view.Menu;
- import android.widget.TextView;
- public class TextViewActivity extends Activity {
- private TextView mTextView;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- super.setContentView(R.layout.main);
- //通过id号找到我们设置的TextView组件
- mTextView = (TextView)findViewById(R.id.myTextView);
- //设置文本框的字体为可滚动的方式,主要是这里
- mTextView.setMovementMethod(ScrollingMovementMethod.getInstance());
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.main, menu);
- return true;
- }
- }
Ok,今天到此,明天继续。
转载于:https://blog.51cto.com/jackcheng/1123651