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;
}
});
}
}
运行结果:点击回车后显示用户名和密码