要繪製簡單的圖形,可以使用Drawable類別的抽象物件,它會被擴展出來成為不同的具體Drawable 圖形,包括有BitmapDrawable, ShapeDrawable, PictureDrawable, LayerDrawable,當然也可以有自己定義的 Drawable.
三種方法可以定義和實做一個Drawable物件:
1、使用圖像,將之存在專案的資源(res/drawable);
2、使用xml檔案來定義Drawable屬性;
3、直接寫碼。
最簡單的方式是將圖檔直接放入應用程式,然後由專案資源來獲取圖像檔案。可以使用的格式有.png, jpg, gif.
第一種方法:(ImageView 取圖像檔時用 .setImageResource(R.drawable.icon) )
先將 icon.png 存在 res/drawable目錄下
public class Cq_Img01Activity extends Activity {
/** Called when the activity is first created. */
LinearLayout mLinearLayout;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Create a LinearLayout for ImageView 建立畫面佈局
mLinearLayout = new LinearLayout(this);
//Create ImageView obj 實做圖像顯示欄位,然後從res/drawable目錄獲取圖像,放入自身
ImageView imageview = new ImageView(this);
imageview.setImageResource(R.drawable.icon);
//Set ImageView
imageview.setAdjustViewBounds(true);
imageview.setLayoutParams(new Gallery.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
mLinearLayout.addView(imageview);
setContentView(mLinearLayout);
}
}
*******************
要操作圖像本身時(譬如以手指移動圖像),首先得建立一個Drawable 類別的圖像資源物件。自圖像資源(Resources)取得圖像資源的ID(R.drawable.icon),定義成圖像物件,才能使用。
Resources res = mContext.getResources();
Drawable myDrawableObj = res.getDrawable(R.drawable.icon);
******************************************************************
第二種方法:2、使用xml檔案來定義Drawable屬性
res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:src="@drawable/icon" />
</LinearLayout>
public class ImageActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView (R.layout.main);
}
}
*****************************************************
沒有留言:
張貼留言