2014-09-28 138 views
0

我是新來的Android編程和我已經加入長的圖像大小爲470x3066px到我的應用程序,但是當我啓動應用程序存在不顯示只有白色屏幕和形象。 這裏是我的Java代碼圖片中沒有顯示

public class Fizikaformulas extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_fizikaformulas); 

     ActionBar ab = getActionBar(); 
     ab.setDisplayHomeAsUpEnabled(true); 

     // Bilde mana layouta 
     RelativeLayout layout = (RelativeLayout)findViewById(R.id.fizformulasimg); 

     ImageView img = new ImageView(this); 
     ViewGroup.LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
     img.setLayoutParams(lp); 
     img.setBackgroundResource(R.drawable.ic_launcher); 
     layout.addView(img); 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
     case android.R.id.home: 
      // app icon action bara uzspiesta; uz sakumu 
      Intent intent = new Intent(this, Sakums.class); 
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
      startActivity(intent); 
      return true; 
      default: 
      return super.onOptionsItemSelected(item); 
    } 
    } 

}

還有的.XML

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/fizformulasimg" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"> 

</RelativeLayout> 
+0

順便說一句,你有你爲什麼要dinamically添加映像什麼特別的原因? – 2014-09-28 10:39:51

+0

我將setBackgroundResource()更改爲setImageResource(),但沒有更改,只有沒有圖像的白色屏幕。 – Soiks 2014-09-28 10:40:18

+0

讓我改述 - 是否需要在Java代碼中添加圖像而不是xml? – 2014-09-28 10:49:43

回答

0

使用setImageResource()而不是setBackgroundResource()

的問題是,你設置的ImageViews寬度和高度wrap_content,但背景不能算作內容,因此ImageView將有一個大小爲0

通過XML設置圖像無論是作爲android:src或通過使用setImageResource()您可以修復和ImageView將是一樣大的圖像。