2011-05-06 422 views
0

我試圖在屏幕上設置圖像的尺寸和位置(圖像2),以便它與背景圖像(圖像1)處於相同的位置和大小,而不管屏幕尺寸如何。要做到這一點,我試圖改變我的我的Activity類的onCreate方法圖像2的佈局參數:如何設置圖像的大小和位置?

public class Game_main extends Activity{ 


@Override 
protected void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 



     ImageView image2= (ImageView) findViewById(R.id.seed1); 
     ImageView image1= (ImageView) findViewById(R.id.board_rev1); 


     RelativeLayout rl = (RelativeLayout) findViewById(R.id.rlGame); 
     RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams((image1.getWidth())/4, (image2.getHeight())/4); 
     params.leftMargin = (image1.getWidth())/2; 
     params.topMargin = (image1.getHeight())/4; 
     rl.addView(image2, params); 
     setContentView(R.layout.gamerev); 


} 


} 

但是,當我的應用程序去這個活動,我得到的是說,應用程序意外停止錯誤。然後,我必須強制關閉應用程序。爲什麼會發生?有什麼我失蹤?還是有更好的方法來做到這一點?

在logcat的錯誤是:

E/AndroidRuntime(296):了java.lang.RuntimeException:無法啓動活動鈷 mponentInfo {com.soft.tobi/com.soft.tobi.Game_main} :java.lang.NullPointerExc 主器件接收

但我不明白爲什麼,因爲我的XML文件中存在的所有ID什麼是空:

<?xml version="1.0" encoding="utf-8"?> 
    <RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/rlGame" 
    > 
    <ImageView android:layout_height="fill_parent" android:layout_width="fill_parent" android:id="@+id/board_rev1" android:src="@drawable/board_rev1"></ImageView> 
    <ImageView android:id="@+id/seed1" android:src="@drawable/seed1" android:adjustViewBounds="true" android:layout_height="200dp" android:layout_marginTop="165dp" android:layout_width="200dp" android:layout_marginLeft="30dp"></ImageView> 

</RelativeLayout> 

感謝

+1

你在哪裏做? (如果在onCreate它不會工作,因爲getWidth將返回零)。 logcat中的錯誤是什麼?你還沒有提供足夠的信息來幫助你。 – jkhouw1 2011-05-06 01:19:42

+0

我在OnCreate中這樣做。我怎樣才能獲得logcat?我嘗試運行$ adb logcat,如下所示:http://developer.android.com/guide/developing/tools/logcat.html但它不起作用。你還需要其他信息嗎? – Tobi 2011-05-06 02:46:05

+0

我已更新我的問題以包含所有必要的信息 – Tobi 2011-05-07 03:10:50

回答

0

你放了一個try catch塊並嘗試調試它嗎?它似乎有什麼東西返回null ..

0

我認爲問題是ImageView的

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams((image1.getWidth())/4, (image2.getHeight())/4); 

大小也許它返回0,所以這個問題是occur..try它

相關問題