Blog chia sẻ kinh nghiệm lập trình Android
Chào các bạn hôm nay mình sẽ cùng với các bạn tìm hiểu về AutoCompleteText trong android. Loại này có tác dụng là khi bạn nhập một kí tự nào đó ngay lập tức app sẽ kiểm tra xem trong mảng có những phần tử nào bắt đầu bằng kí tự nó và sẽ xuất hiện cho bạn chọn. thuận tiện cho việc không biết rõ từ đó viết như thế nào. Bây giờ chúng ta cùng bắt đầu xây dựng ứng dụng này nha.
Mình tạo một app đơn giản gồm có tiêu đề , một AutoCompleteTextView , giao diện như sau :
full code xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#7CFC00"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_marginTop="20dp"
android:background="#ECAB53"
android:layout_gravity="center"
android:gravity="center"
android:textSize="25dp"
android:text="MÓN ĂN NGON YÊU THÍCH" />
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="match_parent"
android:layout_height="40dp"
android:background="#FF4040"
android:completionThreshold="1"
android:ems="10"
android:hint="chọn" >
<requestFocus />
</AutoCompleteTextView>
</LinearLayout>
Cách lấy nhanh AutoCompleteTextView
Vậy là xong phần giao diện. tiếp đó các bạn vào file java để có thể sử dụng AutoCompleteTextView.
Các bạn xem chú thích code sẽ làm được ngay @@, đơn giản đúng không!
Đây là full code java:
package com.example.autocompletetextview;
import android.os.Bundle;
import android.app.Activity;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView tvshow;
AutoCompleteTextView auto;
// mảng này chứa các từ cần được auto
String[] item={"Gà Rán","Gà Quay","Gà Hầm","Gà Chiên","Thịt Lợ Quay","Cá Rán","Cá nấu"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvshow =(TextView) findViewById(R.id.textView1);
auto =(AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
// add mảng vừa tạo vào autocompletextview
auto.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,item));
// event lắng nghe sự kiện autocompletextview
auto.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
// sử dụng một trong 3 kiểu event : mình sử dụng event cuối này để bắt sự kiện
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
tvshow.setText(auto.getText());
}
});
}
}
Các bạn chạy ứng dụng và kết quả như hình bên dưới là thành công :
Chúc các bạn thành công :
Mọi thắc mắc các bạn liên hệ mình qua địa chỉ Gmail : svk10acntt@gmail.com hoặc Fb: John Ly Phạm
0 comments:
Post a Comment
http://knlaptrinhandroid.blogspot.com/