Android Smart Dict - 查询界面
Android Smart Dict - 查询界面
上一次我们加载了词汇表,下面就可以提供单词查询功能了。
首先需要设计一个单词查询的界面,最简单的就用一个list 加一个input box即可,经济又实惠。
除此之外,我们还需要考虑list 的每一项究竟需要显示什么内容。仅仅是一个单词吗?这样未免太简单了吧。如果显示单词,音标,解释这些详细信息吗?这个看起来好像抢了单词详细界面的工作,没有必要,过多的信息显示在list项里边,看起来杂乱无章。显示在list项里面的信息必须有意义而且不能过多,所以我决定在list项里边依次显示单词,查询次数,学习次数,出错次数,单词等级。后面我们还可以根据这些信息排列单词的显示顺序。
查询界面主要就是一个list view和一个edit text,代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <ListView
- android:id="@+id/word_list"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:layout_weight="1"/>
- <LinearLayout
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:gravity="center_vertical"
- android:orientation="horizontal">
- <EditText
- android:id="@+id/input_search"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:singleLine="true"
- android:inputType="text"
- android:hint="@string/hint_input_search"
- android:layout_weight="1"/>
- <Button
- android:id="@+id/button_ok"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:visibility="gone"
- android:text="@string/button_search"/>
- </LinearLayout>
- <View
- android:layout_width="fill_parent"
- android:layout_height="@dimen/list_divider_height"
- android:background="@android:drawable/divider_horizontal_dim_dark"/>
- </LinearLayout>
List item就是单词,查询次数,学习次数,出错次数,单词等级,代码如下:
- <?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"
- android:padding="@dimen/word_list_item_padding">
- <TextView
- android:id="@+id/word"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:textSize="@dimen/text_size_medium"
- android:includeFontPadding="false"
- android:layout_toLeftOf="@+id/word_info"
- android:layout_centerVertical="true"
- android:singleLine="true"/>
- <RelativeLayout
- android:id="@id/word_info"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerVertical="true"
- android:layout_alignParentRight="true">
- <View
- android:id="@+id/indicator_search"
- android:layout_width="@dimen/word_list_ltem_indicator_size"
- android:layout_height="@dimen/word_list_ltem_indicator_size"
- android:layout_marginLeft="@dimen/word_list_item_indicator_margin_horizontal"
- android:layout_centerVertical="true"
- android:background="@drawable/ic_indicator_search"/>
- <TextView
- android:id="@+id/search_count"
- android:layout_toRightOf="@id/indicator_search"
- android:textSize="@dimen/text_size_small"
- android:layout_centerVertical="true"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"/>
- <View
- android:id="@+id/indicator_study"
- android:layout_width="@dimen/word_list_ltem_indicator_size"
- android:layout_height="@dimen/word_list_ltem_indicator_size"
- android:layout_marginLeft="@dimen/word_list_item_indicator_margin_horizontal"
- android:layout_toRightOf="@id/search_count"
- android:layout_centerVertical="true"
- android:background="@drawable/ic_indicator_study"/>
- <TextView
- android:id="@+id/study_count"
- android:layout_toRightOf="@id/indicator_study"
- android:textSize="@dimen/text_size_small"
- android:layout_centerVertical="true"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"/>
- <View
- android:id="@+id/indicator_mistake"
- android:layout_width="@dimen/word_list_ltem_indicator_size"
- android:layout_height="@dimen/word_list_ltem_indicator_size"
- android:layout_marginLeft="@dimen/word_list_item_indicator_margin_horizontal"
- android:layout_toRightOf="@id/study_count"
- android:layout_centerVertical="true"
- android:background="@drawable/ic_indicator_mistake"/>
- <TextView
- android:id="@+id/mistake_count"
- android:layout_toRightOf="@id/indicator_mistake"
- android:textSize="@dimen/text_size_small"
- android:layout_centerVertical="true"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"/>
- <View
- android:id="@+id/indicator_level"
- android:layout_width="@dimen/word_list_ltem_indicator_size"
- android:layout_height="@dimen/word_list_ltem_indicator_size"
- android:layout_marginLeft="@dimen/word_list_item_indicator_margin_horizontal"
- android:layout_toRightOf="@id/mistake_count"
- android:layout_centerVertical="true"
- android:background="@drawable/ic_indicator_level"/>
- <TextView
- android:id="@+id/level"
- android:layout_toRightOf="@id/indicator_level"
- android:textSize="@dimen/text_size_small"
- android:layout_centerVertical="true"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"/>
- </RelativeLayout>
- </RelativeLayout>
来看看效果吧:
|
评论暂时关闭