我是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 :(得分:0)
使用setImageResource()
代替setBackgroundResource()
。
问题是您将ImageViews
的宽度和高度设置为wrap_content
,但背景不算作内容,因此ImageView
的大小为0。
通过将图片设置为xml中的android:src
或使用setImageResource()
,您可以修复该图片,ImageView
将与图片一样大。