Re: [問題] Android canvas排版問題

看板java作者 (我還想要更多力量)時間13年前 (2010/12/28 00:22), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《chenwu (圈誤)》之銘言: : 我知道這裡是java版 : 不過知道很多android程式高手在這邊 所以也來這裡問問,請各位高手不吝指教 : 我想問的是一個canvas畫布的排版問題 : 我現在已經將我在畫布上顯示的動畫完成了, : 不過現在顯示是在手機的全螢幕, : 不過我希望能只切割螢幕的一小部分顯示動畫,其餘可以加入一些TextView之類的東西 : 但是不太知道應該怎麼做,於是到板上來請教 : 我希望呈現的畫面如下 : http://www.wretch.cc/album/show.php?i=CHENWU&b=43&f=1744048444&p=0 : 原先動畫只能顯示全螢幕的程式碼大略如下: : public class Draw extends Activity { : @Override : protected void onCreate(Bundle savedInstanceState) { : super.onCreate(savedInstanceState); : setContentView(new DrawView(this)); : } : private static class DrawView extends View : { : . : . : 邏輯部分略過 : . : . : public DrawView(Context context) : { : super(context); : .. : .. : } : .. : @Override protected void onDraw(Canvas canvas) : { : .. : .. : } : . : . : } : } : 程式碼大略如上 : 我希望做到的是將DrawView只占據螢幕上的一部份 : Android新手 請各位高手解答 我連動畫都不會做,囧> 不過我會覺得你該把DrawView這個class抽出來到com.your.DrawView 然後用layout的xml去定義你畫面要長的樣子,為了以後可以共用 layout大致上如下。 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal|bottom" android:gravity="center" android:text="媽~我在這~" 其他attr... /> <com.your.DrawView android:id="@+id/my_drawview" android:layout_width="100dip" android:layout_height="100dip" android:layout_gravity="center" 其他attr.... /> </FrameLayout> 這樣畫面應該是會有個100dip x 100dip的動畫在正中間,然後文字在中間下面。 然後在程式裡面用findViewById(R.id.my_drawview)去找到,然後做你要做的。 這是我個人自我感覺良好比較有MVC概念的做法啦。 當然你要在程式裡面直接new FrameLayout或RelativeLayout之類的 然後addView(yourDrawView)也是可以,當然~也還有其他做法。 可以用custom view之類的去拜一下神 最後,可以私下偷看一下你的動畫的程式碼嗎XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.82.103
文章代碼(AID): #1D6BqgAf (java)
文章代碼(AID): #1D6BqgAf (java)