我正在创建一个动态制作桌面的应用程序。每个tablerow包括3个ImageView和一个TextView,textview没有任何问题,我同样使用textview.setGravity(Gravity.Center_Vertical),但是ImageViews存在问题。如何居中(垂直和水平)?
这是wichich显示我想要实现的目标:
这是Wchich向TableLayout发布的所有内容:
public class Obiekt {
int moje;
TableRow tr = new TableRow(MainActivity.this);
ImageView iv = new ImageView(MainActivity.this);
ImageView sett = new ImageView(MainActivity.this);
ImageView rin = new ImageView(MainActivity.this);
public Obiekt(int obraz, int obraz2, int obraz3, int dzwiek, String tekst) {
moje = sound.load(MainActivity.this, dzwiek, 1);
iv.setImageResource(obraz);
//iv.setLayoutParams(rowparams);
tr.addView(iv);
// TEXTVIEW settings
TextView tv = new TextView(MainActivity.this);
tv.setText(tekst);
tv.setTypeface(tf);
tv.setTextSize(rozmiar);
tv.setGravity(Gravity.CENTER_VERTICAL);
tv.setGravity(Gravity.CENTER_HORIZONTAL);
tv.setTextColor(Color.parseColor("#FFFFFF"));
tr.addView(tv);
// ImageView RIGHT
sett.setImageResource(obraz2);
tr.addView(sett);
// ImageView RING
rin.setImageResource(obraz3);
tr.addView(rin);
//tr.setLayoutParams(rowparams1);
tl.addView(tr);
View wiew = new View(MainActivity.this);
wiew.setBackgroundResource(R.drawable.divide);
tl.addView(wiew);
tv.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
play();
}
});
}
public void hide() {
tr.setVisibility(10);
}
public void size() {
iv.getLayoutParams().height=rozmiar;
iv.getLayoutParams().width=rozmiar;
sett.getLayoutParams().width=rozmiar;
sett.getLayoutParams().height=rozmiar;
rin.getLayoutParams().height=rozmiar;
rin.getLayoutParams().width=rozmiar;
}
public void play() {
sound.play(moje, 1, 1, 0, 0, 1);
}
}
答案 0 :(得分:1)
设置您的图像视图" SCALE TYPE"以FitXY为例,你的imageview是imageView而不是 imageView.setScaleType(ScaleType.FIT_XY);
答案 1 :(得分:0)
试试这个
ImageView imgView=new ImageView(this);
imgView.setImageResource(R.drawable.yourimage);
imgView.setScaleType(ImageView.ScaleType.FIT_XY);
答案 2 :(得分:0)
您是否尝试在ImageView
内添加RelativeLayout
?
将RelativeLayout
设置为LayoutParams
以匹配您要绘制的空间(单元格的完整大小),然后将ImageView
添加到{{1}添加RelativeLayout