2016-10-17 3 views
0

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

XML моего макета:

<android.support.design.widget.CollapsingToolbarLayout 
     android:id="@+id/toolbar_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true" 
     app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      app:layout_collapseMode="pin" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

     <ImageView 
      android:id="@+id/header_logo" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scaleType="center" 
      android:layout_gravity="center" 
      app:layout_collapseMode="parallax" 
      /> 

    </android.support.design.widget.CollapsingToolbarLayout> 

Когда я пытаюсь сделать что-то вроде следующего, по событию:

ImageView im = (ImageView)findViewById(R.id.toolbar_layout); 
im.setBitmap(image_here); 

Но когда я вызвать это событие, ничего не происходит. Я знаю, что мой образ правильно разбирается, потому что на самом деле у меня нет никаких исключений; Я вообще не получаю никаких исключений на протяжении всего этого процесса. Я здесь что-то не так? Есть ли способ обновить эту панель инструментов, чтобы обновить изображение?

+0

я думаю, что его, потому что 'R.id.toolbar_layout' является' id' 'CoordinatorLayout', а не' id' 'ImageView'. Измените его на 'R.id.header_logo' –

ответ

0

Может быть, потому, что вы вызываете макета идентификатор Toolbar в ImageView

Попробуйте Изменение

ImageView im = (ImageView)findViewById(R.id.toolbar_layout); 
im.setBitmap(image_here); 

в

ImageView im = (ImageView)findViewById(R.id.header_logo); 
im.setBitmap(image_here); 
Смежные вопросы