谁能告诉本人怎么设置不了ImageView的setScaleType的属性

Android 码拜 8年前 (2017-04-25) 1243次浏览
package com.example.android_tablelayout;
import android.app.Activity;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.Toast;
public class MainActivity extends Activity {
Integer[] image = {
R.drawable.guide_1, R.drawable.guide_2, R.drawable.guide_3,
R.drawable.guide_4, R.drawable.guide_1, R.drawable.guide_2,
R.drawable.guide_3, R.drawable.guide_1, R.drawable.guide_2,
R.drawable.guide_3,
};
private ImageView imageview;
TableRow tab1, tab2, tab3, tab4;
TableLayout tablelayout;
private Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tablelayout = (TableLayout) findViewById(R.id.tab_layout);
tab1 = new TableRow(this);
tab2 = new TableRow(this);
tab3 = new TableRow(this);
tab4 = new TableRow(this);
DisplayMetrics metric = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metric);
int width = metric.widthPixels;
int height = metric.heightPixels;
int j = 1;
for (int i = 0; i < image.length; i++) {
imageview = new ImageView(this);
TableRow.LayoutParams layout = new TableRow.LayoutParams((height) / 4, (height – 100) / 4);
layout.setMargins(5, 5, 5, 5);
imageview.setScaleType(ImageView.ScaleType.CENTER);
imageview.setLayoutParams(layout);
imageview.setBackgroundResource(image[i]);
final int k = i;
imageview.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,”您点击了图片”+k,Toast.LENGTH_SHORT).show();
intent = new Intent();
intent.setClass(MainActivity.this, CompanyStyleInfo.class);
startActivity(intent);
}
});
if (j == 1) {
tab1.addView(imageview);
System.out.println(“tab1”);
} else if (j == 2) {
tab2.addView(imageview);
System.out.println(“tab2”);
} else if (j == 3) {
tab3.addView(imageview);
System.out.println(“tab3”);
} else if (j == 4) {
tab4.addView(imageview);
System.out.println(“tab4”);
}
j++;
if (j == 5) {
j = 1;
}
}
// imageview.setScaleType(ImageView.ScaleType.CENTER_CROP);
tablelayout.addView(tab1);
tablelayout.addView(tab2);
tablelayout.addView(tab3);
tablelayout.addView(tab4);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
解决方案

40

imageview.setBackgroundResource
=>
imageview.setImageResource

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明谁能告诉本人怎么设置不了ImageView的setScaleType的属性
喜欢 (0)
[1034331897@qq.com]
分享 (0)