真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ListView中顯示圓形圖像-創(chuàng)新互聯(lián)

初學(xué)android,想要找些小程序練習(xí)一下。在使用手機(jī)QQ是發(fā)現(xiàn)聯(lián)系人中的圓形圖標(biāo),比較好看。所以琢磨著自己是實(shí)現(xiàn)一下,當(dāng)然咯只是界面的效果。

目前創(chuàng)新互聯(lián)已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、鋼城網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

首先想到的就是使用Android中的ListView來顯示每一項(xiàng)的聯(lián)系人。而ListView在一個(gè)Activity中顯示出來有2中方式,一個(gè)是在XML文件中聲明一個(gè)ListView的標(biāo)簽,通過findViewById()來找到,然后通過適配器Adapter來加載。另一種方式,顯示內(nèi)容的是從Activity派生的ListActivity類,然后在使用適配器來加載內(nèi)容。(此處只是加載顯示幾項(xiàng)的內(nèi)容,如果項(xiàng)目條數(shù)太多,則要是對(duì)ListView中顯示Item進(jìn)行優(yōu)化)

理解完ListView每個(gè)Item項(xiàng)的加載,下面解決的是怎么將所給的圖片轉(zhuǎn)化為圓形在界面上顯示。解決方式是從ImageView類中派生一個(gè)CustomImageView類,并且重寫其中的onDraw()函數(shù)來達(dá)到顯示圓形的目的。因?yàn)楫?dāng)我們CustomImageView類從ImageView類派生而來,所以在XML中可以使用這個(gè)標(biāo)簽來定義顯示內(nèi)容。但是在使用時(shí)注意:要將這個(gè)CustomImageView類的路徑寫進(jìn)去。如:

而我們?cè)趏nDraw()函數(shù)中需要做的是:

1、獲取父類中的到的圖片信息Bitmap.

2、對(duì)圖片大小進(jìn)行處理,變成正方形。(可不做)

3、使用方法疊加,只顯示出中間圓形部分。

    Drawable drawable = getDrawable();
    if (null != drawable) {
        mSrc = ((BitmapDrawable) drawable).getBitmap();
    }
    int min = Math.min(mWidth, mHeight);
    
    //長度如果不一致,按小的值進(jìn)行壓縮 
    mSrc = Bitmap.createScaledBitmap(mSrc, min, min, false);
    canvas.drawBitmap(createCircleImage(mSrc, min), 0, 0, null);

ListView在ListActivity類中的實(shí)現(xiàn)如下:

public class MainActivity extends ListActivity {
    private static String[] aa = new String[] { "hello world",
        "this is my listview", "邵洋江加油", "你會(huì)成功的", "you will success" };
    private static int[] draw = new int[] { R.drawable.chutian,
        R.drawable.icon, R.drawable.chutian, R.drawable.chutian,R.drawable.test };
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 每個(gè)list里面放的都是MAP,map里面放的是鍵值對(duì),這里指圖片和文字
        List> Items = new ArrayList>();
        // 把該顯示的內(nèi)容放到list中
        for (int i = 0; i < aa.length; i++) {
            Map item = new HashMap();
                item.put("p_w_picpath", draw[i]);
                item.put("textview1", aa[i]);
                Items.add(item);
        }
        // 構(gòu)建適配器Adapter,將數(shù)據(jù)與顯示數(shù)據(jù)的布局頁面綁定
        SimpleAdapter simpleAdapter = new SimpleAdapter(this, Items,
            R.layout.activity_main, new String[] { "textview1", "p_w_picpath" },
            new int[] { R.id.textview1, R.id.p_w_picpath });
        // 通過setAdapter()方法把適配器設(shè)置給ListView
        setListAdapter(simpleAdapter);
}

運(yùn)行效果圖片:

ListView中顯示圓形圖像

Demo鏈接:http://down.51cto.com/data/1979117

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


當(dāng)前題目:ListView中顯示圓形圖像-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://weahome.cn/article/cscegg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部