Android開發之精仿QQ設定介面(自訂PreferenceActivity)

來源:互聯網
上載者:User

今天,再給大家分享一下QQ設定介面的UI布局實現,不羅嗦,直接

設定主介面
<ignore_js_op>

皮膚設定介面
<ignore_js_op>

流量統計介面
<ignore_js_op>

好友設定介面(其實這個不在設定介面裡,工程裡有該ACTIVITY,就在最後加上了)
<ignore_js_op>

在開發應用程式的過程中我們有很大的機會需要用到參數設定功能
那麼在Android應用中,我們如何?參數設定介面及參數儲存呢
答案是使用PreferenceActivity,相信大家並不陌生
只不過系統內建的樣式黑布隆冬的,看起來很不美觀,難登大雅之堂
只要我們稍加修飾,便可扭轉乾坤,化彆扭為和諧

主要是在MainFeast設定檔裡給ACTIVITY加上自訂的樣式 
        <activity android:name=".SettingActivity"
                  android:label="設定與協助"
                  android:theme="@style/Default"
                  android:configChanges="keyboardHidden|orientation" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

且看 Style.xml設定檔

<?xml version="1.0" encoding="utf-8"?>
<resources>

        <style name="CustomWindowTitleBackground">
        <item name="android:background">@drawable/skinpic_green</item>
    </style>
    
     <style name="CustomWindowTitleText" >  
          <item name="android:textSize">20dip</item>  
          <item name="android:textColor">#FFffffff</item>  
          <item name="android:paddingLeft">10dp</item>
     </style> 
    
    
    <style name="customCheckBox" parent="@android:style/Widget.CompoundButton.CheckBox">
        <item name="android:button">@drawable/selector_checkbox</item>
    </style>
    
    
    <style name="customListView" parent="@android:style/Widget.ListView">
        <item name="android:scrollbarSize">10.0dip</item>
        <item name="android:scrollbarThumbVertical">@drawable/scrollbar_handle_vertical</item>
        <item name="android:listSelector">@drawable/selector_list</item>
        <item name="android:cacheColorHint">#00000000</item>
    </style>
   

    
    <style name="Default.NoTitleBar" parent="@android:style/Theme.Light.NoTitleBar">
                <item name="android:textColorPrimaryInverse">@android:color/black</item>           
        <item name="android:windowBackground">@color/window_bg</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowTitleSize">42.0dip</item>
        <item name="android:windowTitleStyle">@style/CustomWindowTitleText</item> 
        <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
        <item name="android:checkboxStyle">@style/customCheckBox</item>
        <item name="android:listViewStyle">@style/customListView</item>
        
    </style>
    
    
    <style name="Default" parent="@style/Default.NoTitleBar">
        <item name="android:windowNoTitle">false</item>
    </style>
    
    
</resources>

本例只用到了CheckBox和ListView,如果大家的設定介面有用到其它控制項
如editText,radioButton之類的,只需依葫蘆畫瓢,加上editTextStyle,radioButtonStyle即可
如需自訂Preference布局,則需派生一個Preference子類,並配置相關XML布局檔案
詳情請見:http://blog.csdn.net/aomandeshangxiao/article/details/6659346
在此就不多言了

像好友資料這樣的UI布局還是很常見的,很多人可能不知道怎麼實現
主要是採用了線形布局,一個白框是個linearlayout,白框內一行行的同樣是linearlayout
分割線則是採用了shape的配置布局
類似

<?xml version="1.0" encoding="UTF-8"?>
<shape android:shape="rectangle"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#ffe0e0e0" />
</shape>

當然類似布局的實現未必都是如此,這裡只是給大家提供一個思路
好了其它的也不多說了,自己下工程看吧。

 QQUIDemo.rar

來源:eoeAndroid開發人員社區。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.