溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

解決橫縱屏問題、得到系統(tǒng)通訊錄數(shù)據(jù)的方法

發(fā)布時(shí)間:2020-07-20 11:52:45 來源:網(wǎng)絡(luò) 閱讀:462 作者:xiaoyusong 欄目:開發(fā)技術(shù)

   兩個(gè)很簡(jiǎn)單的小問題,但又容易忘記,所以在此記錄一下:

   一、解決橫縱屏問題:

   android系統(tǒng)默認(rèn)設(shè)置下,切換屏幕方向時(shí),生命周期方法會(huì)被重新調(diào)用一次,如,當(dāng)把橫屏切換成縱屏?xí)r,activity會(huì)分別調(diào)用以下方法:onPause()- onStop()- onDestroy() - onCreate() - onStart() - onResumn()。所以這樣就會(huì)導(dǎo)致界面被重新加載一次,影響性能。

   解決這個(gè)問題,需要在清單文件里設(shè)置activity的屬性:

    android:configChanges="orientation|keyboardHidden"

   若想要自己設(shè)置屏幕方向,則是:android:screenOrientation="portrait",

    portrait :縱屏

    landscape:橫屏

    sensor   :顯示的方向由方向傳感器決定的(兩個(gè)方向)

    fullSensor:顯示的方向由方向傳感器決定的(四個(gè)方向)


    二、獲取系統(tǒng)通訊錄數(shù)據(jù):

       //獲取內(nèi)容解析者

       ContentResolver resolver = getContentResolver();

       //通過內(nèi)容解析者去查詢系統(tǒng)聯(lián)系人

       Cursor cursor = resolver.query(Phones.CONTENT_URI, null, null, null, null);    

       String[] from = new String[]{Phones.NAME,Phones.NUMBER};

       int[] to = new int[]{R.id.textView1,R.id.textView2};

       SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.item_list,

       cursor, from, to);

       mListView.setAdapter(adapter);


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI