小编Une*_*eXp的帖子

在BottomNavigationView中设置最初选择的项目索引/ ID

我已经实现了新的BottomNavigationView(com.android.support:design:25.0.0),并且不知道如何设置选择索引或MenuItemid(在我的情况下,默认情况下应该选择mid item).我担心现在没有这种可能性,因为它太原始了,但无论如何任何帮助都将受到赞赏.谢谢!

android selectedindex android-design-library androiddesignsupport bottomnavigationview

29
推荐指数
4
解决办法
3万
查看次数

片段在方向更改时恢复状态

我必须在我的应用程序中实现"标准"片段导航(请参阅链接).

问题是当设备处于纵向模式时,应该只显示1个片段,当它旋转到横向模式时,应显示2个片段.

我试着用两种不同的方式做到这一点:

1)我只使用一个具有不同肖像和横向布局的活动.

纵向布局xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <FrameLayout
        android:id="@+id/main_frame_fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

这里的景观布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:baselineAligned="false"
    android:orientation="horizontal" >

    <FrameLayout
        android:id="@+id/main_frame_fragment_container_left"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1" />

    <FrameLayout
        android:id="@+id/main_frame_fragment_container_right"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

Activity`s onCreate方法:

    private static ItemsFragment mItemsFragment;
    private static ItemDetailsFragment mItemDetailsFragment;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (mItemsFragment == null) {
            mItemsFragment = ItemsFragment.newInstance();
        }
        if (mItemDetailsFragment == null) {
            mItemDetailsFragment = ItemDetailsFragment.newInstance();
        }

        if (isLandscape()) { …
Run Code Online (Sandbox Code Playgroud)

android screen-orientation android-fragments android-fragmentactivity onrestoreinstancestate

11
推荐指数
1
解决办法
2万
查看次数

具有多个捕捉点的 CoordinatorLayout

这里我有一个相当复杂的动画,可以使用 CoordinatorLayout 以简单的方式解决(我相信。它有3个状态:

\n\n
    \n
  1. 初始(左屏幕)- 标题视图完全显示(橙色\n背景):工具栏、灰色圆形矩形(实际上是一张照片)\n以及下面的一些其他视图(TextViews、RatingBar等)
  2. \n
  3. 向上滚动内容(屏幕中间\n) - 圆矩形正在放大,其上的绿色前景 alpha 级别不断变化,因此滚动时它会变成绿色(嗯,在这些屏幕上并不明显。绿色背景实际上是一个缩放的圆矩形,其上有绿色前景,这就是标题背景变为绿色而不是橙色的原因)
  4. \n
  5. 再次滚动(右屏幕)-标题的其余部分应该向上滚动
  6. \n
\n\n

向下滚动内容应该会相应地导致视图以相反的方式出现。

\n\n

CoordinatorLayout 状态

\n\n

我有一些使用 CoordinatorLayout 的经验,但我真的不确定我是否理解如何处理 2 个锚点。我了解滚动标志的工作原理以及缩放(第 2 页)和更改前景 alpha 的工作原理,我需要一个自定义行为实现,但现在我无法理解如何在复杂的情况下处理所有这些。

\n\n

到目前为止我找到的只是Sa\xc3\xbal Molinero\ 的教程以及带有示例的教程

\n\n

因此,请为这里的糟糕描述感到抱歉,我当然会更新我的问题,并在我在这个问题上取得一些成功时添加源代码,但现在我很高兴得到一些提示或教程我\已经错过了。希望有人在项目中有类似的东西。

\n\n

这是我的测试存储库及其代码,这是我的layout.xml文件的链接。

\n

android android-animation android-coordinatorlayout android-collapsingtoolbarlayout android-nestedscrollview

5
推荐指数
1
解决办法
2643
查看次数