Articles of android support design

在屏幕旋转期间保存BottomNavigationView选定的项目

使用ASL的25.0 BottomNavigationView我面临一些麻烦,如保存选定的项目(或他的索引)和编程选定的项目。

更改工具栏和CollapsingToolbarLayout以编程方式滚动标志

我有一个单独的活动Android应用程序与大量的片段。 当我显示一个列表屏幕时,我想使用Toolbar , app:layout_scrollFlags="scroll|enterAlways"属性。 在细节片段中,我想使用CollapsingToolbarLayout和一个图像。 由于这是一个单一的活动应用程序,我只有一个Toolbar 。 是否有可能修改我的布局编程,以适应这两种情况?

当我在android中滚动内容时如何隐藏工具栏

我想隐藏我的工具栏,当我滚动我的文字和图像的内容,在这里我使用scrollView获取滚动内容时,当我滚动内容如何隐藏工具栏,请任何一个告诉我如何获得 这里是我的XMl代码 content_main.XML <android.support.v4.widget.NestedScrollView xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:android="http://schemas.android.com/apk/res/android" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:paddingTop="?android:attr/actionBarSize" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:id="@+id/textone" android:layout_width="match_parent" android:layout_height="match_parent" android:textSize="23dp" android:textStyle="bold" android:text="hello world jheds sdjhs jds sjbs skjs ksjs kksjs ksj sdd dskd js sk "/> <ImageView android:id="@+id/imge" android:layout_width="match_parent" android:layout_height="250dp" android:src="@drawable/imag_bg"/> <TextView android:id="@+id/texttwo" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="10dp" android:layout_marginRight="10dp" android:text="Pretty good, the […]

Android BottomSheetDialogFragment不完全展开

我有以下testing底部实施。 当我将peekHeight设置为小于500的值时,它可以工作。 经过一定的价值后,任何增加偷看高度都不会改变底部展开的方式。 它只是在那里只手动拖动。 我们如何以编程方式设置peekHeight,以确保底部表单被自动扩展到窥视高度。 bottom_sheet_dialog_main <?xml version="1.0" encoding="utf-8"?> <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/locUXCoordinatorLayout" android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:id="@+id/locUXView" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:orientation="vertical" app:behavior_hideable="false" app:behavior_peekHeight="0dp" app:layout_behavior="@string/bottom_sheet_behavior"> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:text="1 Value" /> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:text="2 Value" /> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:text="3 Value" /> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:text="4 Value" /> <TextView android:layout_width="match_parent" android:layout_height="100dp" android:text="5 Value" /> <TextView […]

Android支持devise库中的TabLayout中的IndexOutOfBoundsException

我在我的所有项目中使用android.support.design ,今天我更新到最新版本 com.android.support:design:22.2.1 这是一个坏主意,因为我的项目崩溃了 java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0 java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255) java.util.ArrayList.get(ArrayList.java:308) android.support.design.widget.TabLayout.getTabAt(TabLayout.java:407) android.support.design.widget.TabLayout.setupWithViewPager(TabLayout.java:585) 经过一些debugging,我发现这个方法有问题: public void setupWithViewPager(@NonNull ViewPager viewPager) { PagerAdapter adapter = viewPager.getAdapter(); if(adapter == null) { throw new IllegalArgumentException("ViewPager does not have a PagerAdapter set"); } else { this.setTabsFromPagerAdapter(adapter); viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(this)); this.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(viewPager)); if(this.mSelectedTab == null || this.mSelectedTab.getPosition() != viewPager.getCurrentItem()) { […]

如何在Android支持库v24.0.0中以编程方式设置AppBarLayout的高程?

从Android支持库v23.4.0升级到v24.0.0时,将标高设置为0,以编程方式将AppBarLayout停止工作: appBayLayout.setElevation(0); 它在设置XML中的高程时起作用。

带有阴影的Android底部导航栏

我正在使用Google的支持devise库v25.1.0在Android应用程序中实现底部导航栏 。 有什么方法可以添加投影效果,与当前的Android本机Google相册应用程序相同?

包装SnackBar上的内容高度

有什么办法让一个SnackBar包装其文本内容? 你可以查看我的问题如下: 正如你所看到的文本结束于“联系我们…”,它应该显示整个消息。 谢谢!

与所有活动共享NavigationView?

我们如何与所有的活动共享Drawer ? 在lister: onNavigationItemSelected的setNavigationItemSelectedListener我们可以得到id并导航到它。 我正在寻找的东西是这样的: private void initDrawerLayout() { drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); NavigationView navView = (NavigationView) findViewById(R.id.navigation_view); navView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(MenuItem menuItem) { Intent intent; int id = menuItem.getItemId(); switch(id) { case R.id.home: case R.id.drawer_home: // call activity instead of adding/replacing fragment return true; case R.id.drawer_gallery: // call activity instead of […]

在更新到支持工具之后,再次获取java.lang.NoClassDefFoundError:android.support.v7.internal.view.menu.i

我已经使用4.2.2手机实现了https://code.google.com/p/android/issues/detail?id=78377上列出的许多解决scheme之一,但现在我已经更新了支持工具23这个问题已经回来了。 如果你看看这个问题报告,你会看到有很多人在更新后遇到同样的问题。 NoClassDefFoundError:android.support.v7.internal.view.menu.MenuBuilder上的解决scheme也不起作用,因为它们来自https://code.google.com/p/android/issues/detail?id=78377 这是我得到的exception: java.lang.NoClassDefFoundError: android.support.v7.internal.view.menu.i at android.support.v7.widget.ActionMenuView.getMenu(ActionMenuView.java:643) at android.support.v7.widget.Toolbar.ensureMenu(Toolbar.java:876) at android.support.v7.widget.Toolbar.getMenu(Toolbar.java:847) at android.support.v7.internal.widget.ToolbarWidgetWrapper.getMenu(ToolbarWidgetWrapper.java:702) at android.support.v7.internal.app.ToolbarActionBar.getMenu(ToolbarActionBar.java:583) at android.support.v7.internal.app.ToolbarActionBar.populateOptionsMenu(ToolbarActionBar.java:441) at android.support.v7.internal.app.ToolbarActionBar$1.run(ToolbarActionBar.java:65) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:776) at android.view.Choreographer.doCallbacks(Choreographer.java:579) at android.view.Choreographer.doFrame(Choreographer.java:547) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:762) at android.os.Handler.handleCallback(Handler.java:800) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:194) at android.app.ActivityThread.main(ActivityThread.java:5391) at java.lang.reflect.Method.invokeNative(Method.java) at java.lang.reflect.Method.invoke(Method.java:525) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) at dalvik.system.NativeStart.main(NativeStart.java) 我的proguard有这样的: -keep class !android.support.v7.internal.view.menu.**,android.support.** {*;} 任何解决scheme 得到很多用户的投诉。