Как получить URL изображения из SimpleDraweeView от Fresco? - PullRequest
0 голосов
/ 30 ноября 2018

Получить URL-адрес изображения из Fresco SimpleDraweeView .

У меня есть элементы recyclerView с EditText и SimpleDraweeView, также есть кнопка на моей активности.при нажатии кнопки я хочу получить все данные об элементах реселлера в ArrayList.

Вот код, написанный при нажатии кнопки, и я успешно получил данные editText, кроме URL-адреса SimpleDraweeView.

        ArrayList<ContactUs> getContactUsArrayList = new ArrayList<>();
    for (int i = 0; i < getContactUsArrayList.size(); i++) {
        View view = rvContact.getChildAt(i);
        EditText etName = (EditText) view.findViewById(R.id.etName);
        EditText etMobile = (EditText) view.findViewById(R.id.etMobile);
        SimpleDraweeView sdvImage = (SimpleDraweeView) view.findViewById(R.id.sdvImage);

        String strName = etName.getText().toString();
        String strNumber = etMobile.getText().toString();
        String strImgUrl = ""; //what is the property?


    }

Что такое свойство для получения URL от SimpleDraweeView?

Ответы [ 3 ]

0 голосов
/ 30 ноября 2018

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

Drawable drawable = draweeView.getBackground();
        Bitmap bitmap = draweeView.getDrawingCache();
        Drawable drawable1 = draweeView.getHierarchy().getTopLevelDrawable();

Надеюсь, это поможет.

0 голосов
/ 04 декабря 2018

Я получил решение на основании ответов и комментариев

Что я сделал

Заменить этот код

        ArrayList<ContactUs> getContactUsArrayList = new ArrayList<>();
    for (int i = 0; i < getContactUsArrayList.size(); i++) {
        View view = rvContact.getChildAt(i);
        EditText etName = (EditText) view.findViewById(R.id.etName);
        EditText etMobile = (EditText) view.findViewById(R.id.etMobile);
        SimpleDraweeView sdvImage = (SimpleDraweeView) view.findViewById(R.id.sdvImage);

        String strName = etName.getText().toString();
        String strNumber = etMobile.getText().toString();
        String strImgUrl = ""; //what is the property?


    }

этим кодом

   ArrayList<ContactUs> getContactUsArrayList = new ArrayList<>();
    ContactUs contactUs;
    for (int i = 0; i < getContactUsArrayList.size(); i++) {
        contactUs = getContactUsArrayList.get(i);//Here i got whole object.
        String strName = contactUs.getUserName();
        String strNumber = contactUs.getUserMobile();
        String strImgUrl=contactUs.getImagePath();

    }
0 голосов
/ 30 ноября 2018

Вы должны проанализировать URL-адрес вашего изображения следующим образом.

SimpleDraweeView simpleDraweeView = 
(SimpleDraweeView)findViewById(R.id.simpleviewid);

Uri imageuri = Uri.parse("YOUR IMAGE URL");
simpleDraweeView.setImageURI(imageuri);

Убедитесь, что инициализировали фреску до setContentView(), а ширина и высота в XML-файле simpleDraweeView не должны быть перенесены.Попробуйте это.

Это работает для меня.

...