1
[私はアンドロイドの新機能です、連絡先で働いています、テキストで検索を完了しましたが、検索したい番号でアンドロイドでフォーマットします] [1]ListViewで数値形式で検索する方法
publicクラスContactFragmentは、あなただけの前の回答は番号とテキストのために共通である.Otherwise android:inputType="number"
を与え、その後数を入力したい場合は、フラグメントはView.OnClickListener {
RequestQueue requestQueue;
public static final int MY_PERMISSIONS_REQUEST_READ_CONTACTS = 100;
private ArrayList<SelectUser> selectUsers;
private List<SelectUser> temp;
private ListView listView;
Cursor phones, email;
// Pop up
ContentResolver resolver;
private EditText search;
private ContactAdapter adapter;
private View myview;
int count=0;
private ArrayList<String>server_PhoneNum;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
myview = inflater.inflate(R.layout.contactslayout, container, false);
requestQueue= Volley.newRequestQueue(getActivity());
server_PhoneNum = new ArrayList<>();
search = (EditText) myview.findViewById(R.id.editMobileNo);
selectUsers = new ArrayList<SelectUser>();
resolver = getActivity().getContentResolver();
listView = (ListView) myview.findViewById(R.id.contacts_list);
// Read and show the contacts
showContacts();
search.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
adapter.filter(s.toString());
}
@Override
public void afterTextChanged(Editable s) {
}
});
return myview;
}
private void showContacts() {
// Check the SDK version and whether the permission is already granted or not.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && getActivity().checkSelfPermission(Manifest.permission.READ_CONTACTS) != PackageManager.PERMISSION_GRANTED) {
requestPermissions(new String[]{Manifest.permission.READ_CONTACTS}, MY_PERMISSIONS_REQUEST_READ_CONTACTS);
//After this point you wait for callback in onRequestPermissionsResult(int, String[], int[]) overriden method
} else {
// Android version is lesser than 6.0 or the permission is already granted.
List<SelectUser> contacts = getContactNames();
adapter=new ContactAdapter(contacts,getActivity());
listView.setAdapter(adapter);
}
}
private List<SelectUser> getContactNames() {
List<SelectUser> contacts = new ArrayList<>();
// Get the ContentResolver
ContentResolver cr =getActivity().getContentResolver();
// Get the Cursor of all the contacts
Cursor cursor = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " ASC");
// Move the cursor to first. Also check whether the cursor is empty or not.
if (cursor.moveToFirst()) {
// Iterate through the cursor
do {
// Get the contacts name
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phone_number=cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
String Image=cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.PHOTO_THUMBNAIL_URI));
SelectUser user=new SelectUser();
user.setName(name);
user.setPhone(phone_number);
user.setThumb(Image);
contacts.add(user);
} while (cursor.moveToNext());
}
// Close the curosor
cursor.close();
return contacts;
}
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions,
int[] grantResults) {
if (requestCode == MY_PERMISSIONS_REQUEST_READ_CONTACTS) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// Permission is granted
showContacts();
} else {
Toast.makeText(getActivity(), "Until you grant the permission, we canot display the names", Toast.LENGTH_SHORT).show();
}
}
}
@Override
public void onClick(View v) {
}
}
申し訳ありませんが検索したい連絡先電話番号 –
私はリストビューにいくつかの連絡先を持っています検索を完了しました名前で検索したい番号で –