2016-01-01 4 views
-1

У меня есть следующий фрагмент. Независимо от того, что я делаю, но изображение не видно в Image View-: Для тестирования я поставил кнопку на фрагменте, но что refelected но изображение не видноНе показывать изображение в изображенииView

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

     <com.transenigma.iskconapp.DynamicImageView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:scaleType="centerCrop" 
      android:src="@drawable/img2" 
      android:id="@+id/myAboutImg" /> 
     <TextView 
      android:id="@+id/textView" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:padding="8dp" 
      tools:text="Text" 
      /> 

    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="New Button" 
     android:id="@+id/button" 
     android:layout_gravity="center_horizontal|bottom" /> 
    <!--</android.support.v7.widget.CardView>--> 

</FrameLayout> 

Я сделал следующий класс, который расширяет ImageView -:

package com.transenigma.iskconapp; 

import android.content.Context; 
import android.graphics.drawable.Drawable; 
import android.util.AttributeSet; 
import android.widget.ImageView; 

public class DynamicImageView extends ImageView { 

    public DynamicImageView(final Context context, final AttributeSet attrs) { 
     super(context, attrs); 
    } 

    @Override 
    protected void onMeasure(final int widthMeasureSpec, final int heightMeasureSpec) { 
     final Drawable d = this.getDrawable(); 

     if (d != null) { 
      // ceil not round - avoid thin vertical gaps along the left/right edges 
      final int width = MeasureSpec.getSize(widthMeasureSpec); 
      final int height = (int) Math.ceil(width * (float) d.getIntrinsicHeight()/d.getIntrinsicWidth()); 
      this.setMeasuredDimension(width, height); 
     } else { 
      super.onMeasure(widthMeasureSpec, heightMeasureSpec); 
     } 
    } 
} 
+0

Попробуйте заменить это 'com.transenigma.iskconapp.DynamicImageView' с нормальным' ImageView' –

+0

Я уже пробовал, но не использовал. –

+0

Независимо от того, что я делаю --- вы пробовали какие-либо другие изображения? получить png-изображение из сети, чтобы быть уверенным, что оно не повреждено – Tasos

ответ

1

Что вы хотели бы сделать в своем DynamicImageView? Вы можете попытаться удалить метод onMeasure и увидеть разницу между ними. Возможно, ошибка в вашем onMeasure.

Смежные вопросы