В чем может быть проблема в моем android студийном приложении? - PullRequest
1 голос
/ 11 марта 2020

Я использую android studio для разработки своего приложения; AndroidX, если быть точным. Я получаю ошибку, вызванную diskcachestategy. Пожалуйста, помогите мне исправить это

private Context context;
private List<MenuCategoryObject> categoryObject;

public CategoryAdapter(Context context, List<MenuCategoryObject> categoryObject) {
    this.context = context;
    this.categoryObject = categoryObject;
}

@Override
public CategoryViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View layoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.menu_category_list, parent, false);
    return new CategoryViewHolder(layoutView);
}

@Override
public void onBindViewHolder(CategoryViewHolder holder, int position) {
    final MenuCategoryObject catObject = categoryObject.get(position);
    final int id = catObject.getMenu_id();
    holder.categoryName.setText(catObject.getMenu_name());

    // use Glide to download and display the category image.
    String serverImagePath = Helper.PUBLIC_FOLDER + catObject.getMenu_image();
    Glide.with(context).load(serverImagePath).diskCacheStrategy(DiskCacheStrategy.ALL).fitCenter().override(300, 300).into(holder.categoryImage);

    holder.categoryImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent categoryIntent = new Intent(context, SingleMenuCategoryActivity.class);
            categoryIntent.putExtra("CATEGORY_NAME", catObject.getMenu_name());
            categoryIntent.putExtra("CATEGORY_ID", id);
            context.startActivity(categoryIntent);
        }
    });
}

@Override
public int getItemCount() {
    return categoryObject.size();
}


public static int getResourseId(Context context, String pVariableName, String pResourcename, String pPackageName) throws RuntimeException {
    try {
        return context.getResources().getIdentifier(pVariableName, pResourcename, pPackageName);
    } catch (Exception e) {
        throw new RuntimeException("Error getting Resource ID.", e);
    }
}

}

Я получаю сообщение об ошибке:

error: cannot find symbol method diskCacheStrategy(DiskCacheStrategy)

Как я могу это исправить?

Ответы [ 2 ]

0 голосов
/ 11 марта 2020

Сначала проверьте, добавили ли вы эту зависимость в свой build.gradel: -

    implementation 'com.github.bumptech.glide:glide:4.9.0'

Если да, вставьте эту строку в операторы импорта этого класса: -

com.bumptech.glide.load.engine. DiskCacheStrategy
0 голосов
/ 11 марта 2020

добавьте com.bumptech.glide.load.engine. DiskCacheStrategy в свой блок импорта в начале файла java.

...