gpt4 book ai didi

android - 复选框文本与按钮色调对齐

转载 作者:行者123 更新时间:2023-11-29 01:14:11 25 4
gpt4 key购买 nike

我遇到了一个问题,也许我的设备有问题。

单一线性布局

我在做什么:创建具有三个 View 的登录表单,即编辑文本、按钮(最初可见性消失)、复选框。

我面临的问题:一旦我勾选了复选框,按钮就会变得可见并且复选框会移动到下方,因为我提供了顶部边距并且我的 View 是这样的:

编辑文本按钮(可见性消失)复选框(顶部边距)

一旦选中复选框,我就会使按钮可见,但我面临两个问题。

问题 1:复选框选中时文本向上移动一点但按钮色调不移动它保持固定

问题 2:因为我给了 margin top 和 button 当前不可见,当我检查整个复选框时, View 现在从按钮中获取 margin,而之前它是从编辑文本中获取的,并且仍然再次观察到 Issue 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"
android:padding="0dip"
tools:context=".LoginActivity">

<com.medmainfomatix.VoIPvoiceapp.MyViewPager
android:id="@+id/viewPagerVertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="150dp">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/layout_sms"
android:gravity="center_horizontal"
android:orientation="vertical">



<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="50dp"
android:layout_gravity="center"
>

<EditText
android:id="@+id/loginNo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:minWidth="200dp"
android:layout_gravity="center_horizontal"
android:textSize="25sp"
android:maxLength="10"
android:textColor="@color/white"
android:hint="@string/msg_enter_mobile"
android:digits="1234567890"
android:textCursorDrawable="@null"
android:inputType="phone">

<requestFocus />

</EditText>

</android.support.design.widget.TextInputLayout>

<Button
android:id="@+id/btn_request_sms"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="NEXT"
android:minHeight="50dp"
android:minWidth="170dp"
android:background="@color/btnclr"
android:textColor="@color/pink"
android:textSize="20sp"
android:textStyle="bold"
android:visibility="gone" />

<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginTop="200dp"
android:layout_gravity="center_horizontal"
android:textColor="@color/white"
android:buttonTint="@color/white"/>


</LinearLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/layout_otp"
android:gravity="center_horizontal"
android:orientation="vertical">


<TextView
android:id="@+id/otptext1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginBottom="15dp"
android:paddingLeft="40dp"
android:paddingRight="40dp"
android:layout_gravity="center"
android:text="@string/msg_manual_otp"
android:textColor="@android:color/white"
android:textSize="12dp"
/>

<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:layout_gravity="center"
>



<EditText
android:id="@+id/inputOtp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:minWidth="120dp"
android:layout_gravity="center"
android:textSize="25sp"
android:maxLength="6"
android:textColor="@color/white"
android:hint="@string/lbl_enter_otp"
android:digits="1234567890"
android:textCursorDrawable="@null"
android:inputType="number">

<requestFocus />

</EditText>

</android.support.design.widget.TextInputLayout>

<Button
android:id="@+id/loginButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="15dp"
android:text="VERIFY"
android:background="@color/btnclr"
android:minHeight="50dp"
android:minWidth="170dp"
android:textColor="@color/pink"
android:textSize="20sp"
android:textStyle="bold"
/>

</LinearLayout>
</com.medmainfomatix.VoIPvoiceapp.MyViewPager>

</RelativeLayout>

仅查看布局短信,因为我使用过查看寻呼机,不要查看 Otp 部分。我正在考虑增加复选框的文字大小。

这里有两个屏幕截图,很抱歉延迟。 Before

After

最佳答案

当按钮为 visibility.GONE 时,表示它不占用屏幕空间,当你让他 visibility.VISIBLE 它现在占据一席之地,如果设置不当,其他 View 会对它使用react,最好的解决方案是使用 visibilty.INVISIBLE 这将使它不可见但在屏幕上占据一席之地,这样当它变得可见时什么都不会移动,然后你可以轻松地重新排列屏幕

你可以看看这个了解更多 Android : difference between invisible and gone?

关于android - 复选框文本与按钮色调对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40905769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com