TextView
布局:
<TextView android:id="@+id/textview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:text="@string/hello_world" tools:context=".MainActivity" />
调用:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView=(TextView)findViewById(R.id.textview);获得控件
mTextView.setText("我的第一个文本");设置文本内容
mTextView.setTextColor(Color.GREEN);设置字体颜色
mTextView.setBackgroundColor(color.black);}设置背景 这些也可在xml中设置
当出现URL E-mail 电话号码时,可以为TextView设置链接:
四种方法实现:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <!-- xml属性实现,添加 android:autoLink="all"实现,为所有种类添加链接--> <TextView android:id="@+id/tv01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:autoLink="all" android:text="@string/first_link" /> <!--通过<a>标签的string资源文件实现--> <TextView android:id="@+id/tv02" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/second_link" /> <!-- 通过在java代码中使用html实现 --> <TextView android:id="@+id/tv03" android:layout_width="fill_parent" android:layout_height="match_parent" /> <!-- 通过java代码直接实现 --> <TextView android:id="@+id/tv04" android:layout_width="fill_parent" android:layout_height="match_parent" /> </LinearLayout>
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //设置textview可点击,实现第二种方式 TextView t2=(TextView)findViewById(R.id.tv02); t2.setMovementMethod(LinkMovementMethod.getInstance()); //使用第三种方式实现 TextView t3=(TextView)findViewById(R.id.tv03); t3.setText( Html.fromHtml("<b>text3:</b>"+"<a href=\"http://www.google.com\">连接到google</a>") ); t3.setMovementMethod(LinkMovementMethod.getInstance()); //创建一个spannablestring对象 SpannableString ss=new SpannableString("text4:点击这里拨打电话,点击这里链接到google"); ss.setSpan(new StyleSpan(Typeface.BOLD), 0, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);//0-6个字符为粗体 ss.setSpan(new URLSpan("tel:415113464"), 9, 11, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);//9-11为拨号链接 ss.setSpan(new URLSpan("http://www.google.com"), 18, 20, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);//18-20为网站链接 ss.setSpan(new BackgroundColorSpan(Color.RED), 23, 29, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);//23-29为红色 TextView t4=(TextView)findViewById(R.id.tv04); t4.setText(ss); //实现第四种方式 t4.setMovementMethod(LinkMovementMethod.getInstance()); }}
String:
<string name="first_link"> <b>第一种方式</b> 通过xml属性实现的链接:www.google.cn, 电话:12345645647 </string> <string name="second_link"> <b>第二种方式</b> <a href="http://www.google.com">google</a> </string>
EditText:
android:hint 编辑框空是显示的字符
android:textColorHint 编辑框空时显示字符的颜色
android:inputType 限制输入内容的类型,number,text等
android:digits 限制输入内容,只可取制定的字符
android:maxLenth 限制输入的最长字符数
android:inputType="textPassword" 输入密码模式
妈呀,一个英文的引号,写成了中文的引号了,结果出了其它一堆错误,怎么改都不对。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/yh" /> <EditText android:id="@+id/et" android:textColorHint="#ff2323" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="@string/yonhuming"/> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/mm" /> <EditText android:id="@+id/et1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textPassword" android:hint="@string/mima" /> <TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="match_parent" android:textSize="20sp" /> </LinearLayout>
package example.first; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.view.View.OnKeyListener; import android.widget.EditText; import android.widget.TextView; import android.app.Activity; public class MainActivity extends Activity { private EditText et; private EditText et1; private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et=(EditText)findViewById(R.id.et); et1=(EditText)findViewById(R.id.et1); tv=(TextView)findViewById(R.id.tv); //设置监听器 et1.setOnKeyListener(new OnKeyListener() { @Override public boolean onKey(View v,int keyCode,KeyEvent event){ if(keyCode==KeyEvent.KEYCODE_ENTER){ tv.setText("您的用户名为:"+et.getText().toString()+ "\n"+"您的密码为:"+et1.getText().toString()); } return false; } }); } }
运行结果:点击回车后显示用户名和密码