Как установить фон для редактирования текста (setBackgroundResource (R.drawable.ic_launcher_background)), когда изображение с сервера? - PullRequest
0 голосов
/ 09 июля 2020

Я хочу установить изображение с сервера в качестве фона моего editText.

Легко установить фоновое изображение, когда изображение из @ drawable edit_text.setBackgroundResource(R.drawable.ic_launcher_background);

Я использую это для установки изображения с сервера:

Glide.with(img_1)
            .load(API_BASE_URL+"img/post_wall_background_1.jpg")
            .apply(RequestOptions.bitmapTransform(new RoundedCorners(15)))
            .placeholder(R.drawable.shadow)
            .into(img_1);

Когда пользователь нажимает на это изображение, я хочу установить его как скобку моего editText.

Как я мог это сделать?

Я гуглил часами, но ничего не нашел об этом.

Как предложил @vikas kumar Я пробовал это:

Glide.with(img_1)
            .load(API_BASE_URL+"img/post_wall_background_1.jpg")
            .listener(new RequestListener<Drawable>() {
                @Override
                public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                    return false;
                }

                @Override
                public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                    new_post_edit_text.setBackground(resource);
                    return false;
                }
            })
            .into(img_1);

но не работает.

Большое спасибо.

1 Ответ

2 голосов
/ 09 июля 2020

используйте Glide для загрузки рисунка / растрового изображения и используйте этот рисунок / растровое изображение для установки фона

Glide.with(img_1)
    .load(API_BASE_URL+"img/post_wall_background_1.jpg")
    .listener(new RequestListener<Drawable>() {
        @Override
        public boolean onLoadFailed(Exception e, Object model, Target<Drawable> target, boolean isFirstResource) {
            progressBar.setVisibility(View.GONE);
            return false; // important to return false so the error placeholder can be placed
        }

        @Override
        public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
            edit_text.setBackgroundDrawable(resource);
            return false;
        }
    })
    .into(img_1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...