into /res/layout/ icon.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/widget44" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_x="201px" android:layout_y="165px" android:gravity="center_horizontal"> <ImageView android:id="@+id/icon_image" android:layout_width="wrap_content" android:layout_height="wrap_content"> </ImageView> <TextView android:id="@+id/icon_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" android:gravity="center_horizontal" android:textColorHighlight="#656565"> </TextView> </LinearLayout>
main_switch.xml /res/layout/.
<?xml version="1.0" encoding="utf-8"?>
<GridView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/GridView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:columnWidth="60dp"
android:stretchMode="columnWidth"
android:gravity="center">
</GridView>
public class MainSwitch extends Activity{ GridView grid_main; @Override public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main_switch); grid_main = (GridView)findViewById(R.id.GridView01); grid_main.setAdapter(new ImageAdapter(this)); } public class ImageAdapter extends BaseAdapter{ Context mContext; public static final int ACTIVITY_CREATE = 10; public ImageAdapter(Context c){ mContext = c; } @Override public int getCount() { // TODO Auto-generated method stub return 5; } @Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub View v; if(convertView==null){ LayoutInflater li = getLayoutInflater(); v = li.inflate(R.layout.icon, null); TextView tv = (TextView)v.findViewById(R.id.icon_text); tv.setText("Profile "+position); ImageView iv = (ImageView)v.findViewById(R.id.icon_image); iv.setImageResource(R.drawable.icon); } else { v = convertView; } return v; } } }
很多网友可能在开发Android时发现EditText有时候需要限制用户输入的内容,通常我们可以使用正则表达式直接限制,但是Android 已经为我们准备好了EditText的输入类型,这样的比正则要有以下几点优势:
1. 开发更简单,执行速度高效。 2. 输入法默认会根据情况变动,比如说设置为numeric后输入法会自动仅显示数字,不会出现Qwerty中的字母。
下面我们通过EditText的layout xml文件中的相关属性来实现:
1. 密码框属性 android:password="true" 这条可以让EditText显示的内容自动为 星号,输入时内容会在1秒内变成*字样。
2. 纯数字 android:numeric="true" 这条可以让输入法自动变为数字输入键盘,同时仅允许0-9的数字输入
3. 仅允许 android:capitalize="cwj1987" 这样仅允许接受输入cwj1987,一般用于密码验证
下面是一些扩展的风格属性
android:editable="false" 设置EditText不可编辑
android:singleLine="true" 强制输入的内容在单行
android:ellipsize="end" 自动隐藏尾部溢出数据,一般用于文字内容过长一行无法全部显示时。
public class ExpandableExample extends ExpandableListActivity {
@Override
public void onCreate() {
super.onCreate(savedInstanceState);
setListAdapter(new BaseExpandableListAdapterExample());
}
}
protected class BaseExpandableListAdapterExample extends BaseExpandableListAdapter {
}
然后继承后面两个
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
View groupRow = getLayoutInflater().inflate(R.layout.group_row, null);
TextView textView = (TextView) groupRow.findViewById(R.id.text_group);
textView.setText(getGroup(groupPosition).toString());
return groupRow;
}
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
View childRow = getLayoutInflater().inflate(R.layout.child_row, null);
TextView textView = (TextView) childRow.findViewById(R.id.text_child);
textView.setText(getChild(groupPosition, childPosition).toString());
return childRow;
}
group_row.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/text_element"
android:layout_width="fill_parent"
android:layout_height="48dip"
android:textSize="20sp"
android:textColor="#fff"
android:layout_marginLeft="48dip"
android:gravity="center_vertical" />
</RelativeLayout>