小编Jav*_*per的帖子

后退按钮关闭应用程序而不是转到上一个片段 android 导航组件

在创建一个非常简单的示例应用程序时,当我按下模拟器上的硬件后退按钮时,我无法理解为什么我的应用程序正在关闭。

我有 1 个 mainActivity 和 2 个片段。

当我在 NavigationFragment 上并按回时,应用程序将关闭而不是返回到 IntermediateFragment。

主要活动:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        toolbar.setTitle(R.string.app_name)
    }
}
Run Code Online (Sandbox Code Playgroud)

活动_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.exampleapplication.MainActivity">

<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    app:layout_constraintTop_toTopOf="parent"
    />

<fragment
    android:id="@+id/my_nav_host_fragment"
    android:name="androidx.navigation.fragment.NavHostFragment"
    app:navGraph="@navigation/main_nav"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    app:layout_constraintTop_toBottomOf="@+id/toolbar"
    app:layout_constraintBottom_toBottomOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)

导航图:

<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/main_nav"
    app:startDestination="@+id/intermediateFragment">

    <fragment
        android:id="@+id/intermediateFragment"
        android:name="com.exampleapplication.IntermediateFragment">
        <action
            android:id="@+id/action_intermediate_to_navigation"
            app:destination="@+id/navigationFragment"
            />
    </fragment>

    <fragment
        android:id="@+id/navigationFragment"
        android:name="com.exampleapplication.NavigationFragment"
        />
</navigation>
Run Code Online (Sandbox Code Playgroud)

中间片段:

class IntermediateFragment …
Run Code Online (Sandbox Code Playgroud)

navigation android android-fragments

7
推荐指数
1
解决办法
1569
查看次数

过渡动画比例不会禁用应用程序内的动画

我在做一些 Espresso UI 测试时遇到了一个问题:我想在我的应用程序中禁用动画,这样我就不需要设置超时/需要等待动画完成。

在我的 android 设备上的开发人员选项中禁用 Window 动画比例、过渡动画比例、Animator 持续时间比例不会在使用 android 导航组件在片段之间导航时禁用动画。

动画设置如下:

<action
    android:id="@+id/confirmationAction"
    app:destination="@id/confirmationFragment"
    app:enterAnim="@anim/slide_in_right"
    app:exitAnim="@anim/slide_out_left"
    app:popEnterAnim="@anim/slide_in_left"
    app:popExitAnim="@anim/slide_out_right" />
Run Code Online (Sandbox Code Playgroud)

如何在运行 espresso UI 测试时禁用此动画?

更新:

我按照谷歌的这个指南关于使用导航组件在片段之间导航。

然后我查看了谷歌关于用 Espresso 测试我的应用程序的指南我发现的第一个指南第二个指南中,第一点是通过开发人员选项禁用动画,因此我认为这是正确的方法禁用动画

navigation animation android android-espresso

7
推荐指数
1
解决办法
546
查看次数

行引导内的垂直对齐div

我想重现一个"类似火炬"的视图,以便2个喜欢/不喜欢的按钮在行垂直居中.我已经将行本身垂直居中:

图1 - 我现在如何拥有它: 在此输入图像描述

图2 - 我想要它: 在此输入图像描述

HTML:

<div className="vertical-center">
      <div className="container text-center">
        <div className="row">
          <div className="col-xs-3 col-sm-3 col-md-3 col-lg-3 vote-button">
            <p>Left button</p>
          </div>
          <div className="col-xs-6 col-sm-6 col-md-6 col-lg-6 vacancy-summary">
            <h2>Main page</h2>
          </div>
          <div className="col-xs-3 col-sm-3 col-md-3 col-lg-3 vote-button">
            <p>Right button</p>
          </div>
        </div>
      </div>
    </div> 
Run Code Online (Sandbox Code Playgroud)

CSS:

html, body{
  height: 100%;
}

 h1, h2, h3, p{
  margin: 0px;
 }

.container{
  width:90%;
}

.top5 {margin-top: 5%;}
.top7 {margin-top: 7%;}
.top10{margin-top: 10%;}
.top15{margin-top: 15%;}
.top17{margin-top: 17%;}
.top30{margin-top: 30%;}

.vertical-center {
  height:100%; …
Run Code Online (Sandbox Code Playgroud)

html css row vertical-alignment twitter-bootstrap

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