Я пытался сделать и приложение для Android с двумя фрагментами вместе с вкладками вместе, вдалеке оттуда. .Не удается разрешить метод FAB.show();
Проблема возникла, когда я добавил FloatingActionButtom
, и я хотел, чтобы это изменить в зависимости от вкладки, в которой вы находитесь в этом то, что у меня есть:
С этим изменения значок, когда страницы изменяются, но я хочу, чтобы он делал это с this animation, и для этого мне нужно позвонить fab.hide();
и fab.show();
, но Android studio sais этого метода не существует, так что я могу сделать?
У меня есть все мои SDK, обновленные вместе с IDE, и включили новейшую библиотеку поддержки дизайна на моей градирне: compile 'com.android.support:design:22.2.0'
, также Ive импортировал android.support.design.widget.FloatingActionButton;
в мою MainActivity. Я также пытался написать его на другом компьютере (на всякий случай) и ничего, не может разрешить ошибку метода.
private TabLayout tabLayout;
private ViewPager viewPager;
private ViewPagerAdapter adapter;
FloatingActionButton fab;
ActionBar actionBar;
ContadorFragment fragContador;
Context context;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fab = (FloatingActionButton) findViewById(R.id.fabAñadir);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
viewPager = (ViewPager) findViewById(R.id.viewpager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
setSupportActionBar(toolbar);
actionBar = getSupportActionBar();
getSupportActionBar().setElevation(0);
context = this;
fragContador = new ContadorFragment();
setupViewPager(viewPager);
tabLayout.setupWithViewPager(viewPager);
viewPager.setCurrentItem(1);
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
if (position == 0){ //Esta en el contado
fab.setImageResource(R.drawable.ic_save_black_24dp);
verEstadisticas = false;
} else{// esta en las estadisticas
verEstadisticas = true;
fab.setImageResource(R.drawable.ic_add_black_24dp);
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
private void setupViewPager(ViewPager viewPager) {
adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFrag(fragContador, "Contador");
adapter.addFrag(new EstadisticasFragment(), "Estadisticas");
viewPager.setAdapter(adapter);
}
И расположение:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:fab="http://schemas.android.com/tools"
app:layout_behavior="com.app.common.PatchedScrollingViewBehavior"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/coordinatorLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="exitUntilCollapsed"/>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabIndicatorColor="#000000"
app:tabIndicatorHeight="2dp"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</android.support.design.widget.CoordinatorLayout>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fabAñadir"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_margin="16dp"
android:layout_width="56dp"
fab:fab_type="normal"
android:layout_height="56dp"
android:clickable="true"
app:borderWidth="0dp"
android:elevation="6dp"
android:src="@drawable/ic_add_black_24dp" />
</RelativeLayout>
Последний на самом деле 'com.android.support: design: 23.1.0' –
Работает ли он для приложения android 5.1.1? – Samuel
@ cricket_007, похоже, для android 6 или нет? – Samuel