正文

使用內置Gallery應用程序選擇圖像(7)

Android多媒體開發(fā)高級編程 作者:(美)艾佛瑞


canvas.drawBitmap(bmp, 0, 0, paint);

ImageView alteredImageView = (ImageView) this.findViewById(R.id.

AlteredImageView);

alteredImageView.setImageBitmap(alteredBitmap);

正在使用的Canvas對象上的drawBitmap方法接受源位圖對象x和y偏移以及Paint對象作為參數(shù)。這使得alteredBitmap對象將包含與初始位圖完全相同的信息。

可以將所有這些代碼插入到“選擇圖片”示例中。它應該接近onActivityResult方法的末尾處,在bmp = BitmapFactory.decodeStream行之后。小心不要重復該行,如上述代碼片段所示;也不要忘了添加適當?shù)膇mport語句。

之后,我們想要顯示alteredBitmap對象。為此,使用標準的ImageView,并以alteredBitmap作為參數(shù)調用setImageBitmap。這會假設我們有一個ImageView,并且已經(jīng)在布局XML中聲明其id為alteredImageView。

以下是更新后的布局XML,它用于完整的“選擇圖片”示例,其中包含了初始的ImageView以及用于alteredBitmap的新ImageView,如圖3-4所示。

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

      android:orientation="vertical"

      android:layout_width="fill_parent"

      android:layout_height="fill_parent"

      > 

      <Button 

           android:layout_width="fill_parent"

           android:layout_height="wrap_content"

           android:text="Choose Picture"

           android:id="@+id/ChoosePictureButton"/> 

      <ImageView android:layout_width="wrap_content" 

        android:layout_height="wrap_content"

        android:id="@+id/ChosenImageView"></ImageView> 

      <ImageView android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:id="@+id/AlteredImageView"></ImageView> 

</LinearLayout>


上一章目錄下一章

Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號