亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問為什么第二個游標會出錯?

public class MainActivity extends AppCompatActivity {

? ?private TextView et1,et2,et3;
? ?protected void onCreate(Bundle savedInstanceState) {
? ? ? ?super.onCreate(savedInstanceState);
? ? ? ?setContentView(R.layout.activity_main);
? ? ? ?et1=(TextView)findViewById(R.id.id);
? ? ? ?et2=(TextView)findViewById(R.id.displayname);
? ? ? ?et3=(TextView)findViewById(R.id.number);
? ? ? ?ContentResolver cr=getContentResolver();
? ? ? ?/*
? ? ? ? ? 查詢:
? ? ? ? ? 1.要查詢的URI,2.查詢的字段3.4.查詢的條件5.排序
? ? ? ? */
? ? ? ?Cursor c=cr.query(Contacts.CONTENT_URI,new String[]{Contacts._ID,Contacts.DISPLAY_NAME},null,null,null);
? ? ? ? if(c!=null)
? ? ? ? {
? ? ? ? ? ? while(c.moveToNext())
? ? ? ? ? ? {
? ? ? ? ? ? ? ? int id=c.getInt(c.getColumnIndex("Contacts._ID"));
? ? ? ? ? ? ? ? et1.setText(""+id);
? ? ? ? ? ? ? ? String name=c.getString(c.getColumnIndex("Contacts.DISPLAY_NAME"));
? ? ? ? ? ? ? ? et2.setText(name);
? ? ? ? ? ? ? ? Cursor c1=cr.query(Phone.CONTENT_URI,new String[]{Phone.NUMBER,Phone.TYPE},Phone.CONTACT_ID+"="+id,null,null);
? ? ? ? ? ? ? ? if(c1!=null)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? while (c1.moveToNext()) {
? ? ? ? ? ? ? ? ? ? ? ? int type = c1.getInt(c1.getColumnIndex("Phone.TYPE"));
? ? ? ? ? ? ? ? ? ? ? ? if (type == Phone.TYPE_HOME) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? String number = c1.getString(c1.getColumnIndex("Phone.NUMBER"));
? ? ? ? ? ? ? ? ? ? ? ? ? ? et3.setText("家庭"+number);
? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? ? ? if (type == Phone.TYPE_MOBILE) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? String number = c1.getString(c1.getColumnIndex("Phone.NUMBER"));
? ? ? ? ? ? ? ? ? ? ? ? ? ? et3.setText("手機"+number);
? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? c1.close();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? c.close();
? ? ? ? }
? ?}
}

把C1有關的代碼刪除后就可以運行了,,求看錯誤

正在回答

1 回答

這個錯誤應該是選擇的列于表中的列不匹配,把getColumnIndex中的引號去掉應該就可以了,加了引號和不加引號區別很大

0 回復 有任何疑惑可以回復我~
#1

慕虎7788025 提問者

好的,謝謝了,但有個疑問,取id和聯系人名字的時候加引號是可以運行的。。
2016-07-31 回復 有任何疑惑可以回復我~
#2

慕虎7788025 提問者

非常感謝!
2016-08-02 回復 有任何疑惑可以回復我~
#3

沸騰的黑色 回復 慕虎7788025 提問者

不好意思沒看到,因為前面兩個Contact._ID 和Contact.DISPALY_NAME 代表的值就是你引號里的值,后面的Phone.NUMBER代表的值都是"data1"什么的
2016-08-02 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android攻城獅的第二門課(第3季)
  • 參與學習       74894    人
  • 解答問題       444    個

手勢識別、數據存儲和4大組件,讓你牢牢掌握之前的基礎知識點

進入課程

請問為什么第二個游標會出錯?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號