public class CategoryAdapter extends BaseAdapter {
Context context;
ArrayList<ModelCategory> model;
LayoutInflater layoutInflater;
public CategoryAdapter(Activity activity, ArrayList<ModelCategory> model) {
this.model = model;
this.context = activity;
}
@Override
public int getCount() {
return model.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder = null;
layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = layoutInflater.inflate(R.layout.category_adapter, parent, false);
viewHolder.imageView = (ImageView) convertView.findViewById(R.id.category_grid_image);
viewHolder.textView = (TextView) convertView.findViewById(R.id.get_category_title);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.textView.setText(model.get(position).getCategoryName());
if(position<=3){
viewHolder.imageView.setImageBitmap(StringToBitMap(model.get(position).getCategoryImage()));
}
else {
viewHolder.imageView.setImageBitmap(getBitmap(model.get(position).getCategoryImage()));
}
return convertView;
}
private class ViewHolder {
public ImageView imageView;
public TextView textView;
}
private Bitmap getBitmap(String path) {
BitmapFactory.Options option = new BitmapFactory.Options();
option.inSampleSize = 8;
Bitmap bitmap = BitmapFactory.decodeFile(path, option);
Matrix matrix = new Matrix();
matrix.postRotate(getImageOrientation(path));
Bitmap rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true);
Bitmap resized = Bitmap.createScaledBitmap(rotatedBitmap, 150, 150, true);
return resized;
}
private static int getImageOrientation(String imagePath) {
int rotate = 0;
try {
File imageFile = new File(imagePath);
ExifInterface exif = new ExifInterface(
imageFile.getAbsolutePath());
int orientation = exif.getAttributeInt(
ExifInterface.TAG_ORIENTATION,
ExifInterface.ORIENTATION_NORMAL);
switch (orientation) {
case ExifInterface.ORIENTATION_ROTATE_270:
rotate = 270;
break;
case ExifInterface.ORIENTATION_ROTATE_180:
rotate = 180;
break;
case ExifInterface.ORIENTATION_ROTATE_90:
rotate = 90;
break;
}
} catch (IOException e) {
e.printStackTrace();
}
return rotate;
}
public Bitmap StringToBitMap(String encodedString){
try {
byte [] encodeByte=Base64.decode(encodedString, Base64.DEFAULT);
Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
return bitmap;
} catch(Exception e) {
e.getMessage();
return null;
}
}
我该怎么解决这个?
错误跟踪显示错误occours on
Bitmap bitmap = BitmapFactory.decodeFile(path, option);
Bitmap rotatedBitmap = Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true);
作为公共静态位图decodeFile(字符串路径名、Options opts)
方法的文档:
return The decoded bitmap, or null if the image data could not be
decoded, or, if opts is non-null, if opts requested only the
size be returned (in opts.outWidth and opts.outHeight)
如果无法解码图像数据,此方法将返回null。注意像E/BitmapFactory:无法解码流:...
这样的日志,以找出此方法失败的原因。也许你提供了一条错误的道路。
问题内容: 我正在尝试获取一些信息,但我的应用程序崩溃并显示以下消息: 这是代码: 这是一个纯课。的哪个调用不包含this 。我做错了吗?应始终位于内吗? 根据要求整体: 问题答案: 改成 您为布局充气。视图属于膨胀的布局。因此,使用view对象在中初始化视图 片段由活动主持 您可以在视图中使用和初始化 还在中初始化TextView 。由于Asynctask是一个内部类,因此您可以在那里更新ui
当我运行我的应用程序时,我有一个异常显示,所以我想帮助我:)异常是:java。lang.NullPointerException:尝试调用虚拟方法“int java”。lang.String。空对象引用上的长度() 当我单击Login类中的dd1按钮和按钮实现(public void getData(View v))方法时,会显示异常 非常感谢。 登录类 HttpManager类 日志:
问题内容: Process: com.example.vicevirus.myapplication, PID: 13471 java.lang.NullPointerException: Attempt to invoke virtual method ‘java.lang.String com.google.firebase.auth.FirebaseUser.getUid()’ on a n
在为我的CardView设置onclick listner时获得Nullpointer异常。 错误为: 原因:java.lang.NullPointerException:试图对com.jaysurya.project_scrollwithTap.mainactivity.onCreate(mainactivity.java:27)处的空对象引用调用虚拟方法“void android.suppor
每当我按下应用程序中的登录按钮时,就会出现此错误。有什么建议吗? java.lang.NullPointerExcture:尝试在com.example.android.login.LoginActivity.is空(LoginActivity.java:93)在com.example.android.login.登录ctivity.access0美元(登录ctivity.java:20)在com
每当我尝试使用firebase auth注册用户时,我的应用程序就会崩溃。我的代码如下: