2015-01-05 6 views
1

fab 구현을 위해 this 라이브러리를 사용하고 있습니다. video에서 볼 수 있듯이 조각이로드되면 제조 위치가 변경됩니다. 디버깅 후 listview "setAdapter()"메서드가 위치 변경을 일으키는 것을 발견했습니다. 나는 그것이 일어나는 이유 단서 ..listview의 setAdapter 메소드가 호출되면 FAB 위치가 변경됩니다.

내 레이아웃이 없습니다 : 전 롤리팝에 런타임에

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

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:theme="@style/AppTheme.ActionBar" /> 

    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="fill_parent" 
     android:layout_below="@id/toolbar"> 

     <ListView 
      android:id="@android:id/list" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 

     <LinearLayout 
      android:id="@android:id/empty" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:orientation="vertical" 
      android:gravity="center"> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/sad_face"/> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/no_leagues" /> 

     </LinearLayout> 

    </FrameLayout> 

    <com.melnykov.fab.FloatingActionButton 
     android:id="@+id/fab_new_league" 
     android:src="@drawable/ic_action_add" 
     app:fab_colorNormal="@color/orange" 
     app:fab_colorPressed="@color/redDark" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:layout_alignBottom="@id/toolbar" 
     android:layout_marginBottom="-28dp" 
     android:layout_marginRight="28dp" 
     android:elevation="8dp"/> 

</RelativeLayout> 

내 조각

public class LeagueListFragment extends MyFragment { 
    @InjectView(android.R.id.list) ListView mListView; 
    @InjectView(android.R.id.empty) LinearLayout mEmpty; 

    public static Fragment newInstance() { 
     return new LeagueListFragment(); 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

     View view = inflater.inflate(R.layout.fragment_league_list, container, false); 

     ButterKnife.inject(this, view); 

     // Fetch league list and set up adapter 
     List<League> list = League.getAll(); 
     mAdapter = new LeagueAdapter(getActivity(), list); 

     // Set up ListView 
     mListView.setEmptyView(mEmpty); 
     mListView.setDivider(new ColorDrawable(getResources().getColor(R.color.gray))); 
     mListView.setDividerHeight(2); 
     mListView.setAdapter(mAdapter); 
     mListView.setOnItemClickListener(this); 

     return view; 
    } 
} 

답변

0

여백을 변경 있다는 이유 그림자하지해야합니다 여백을 설정할 때 고려해야합니다. 에 의해 그림자 해제하려고합니다 : (makovkastar answer 참조) .. 지금은 예상되지 않는 문제를 해결

fab:fab_shadow="false"