[英]Android Interface Buttons hide the bottom of my application
我不知道该如何解决。 它在预览中显示良好,当我运行时,界面隐藏了最后一个按钮。 当我添加ScrollView时也会发生这种情况,不是那样。
我也不想隐藏Android的按钮界面。
XML
<FrameLayout 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.example.tiagosilva.amob_android.ContactUsFragment"
android:background="@color/AMOB_gray">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="20dp"
android:weightSum="3">
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="AMOB Headquarters"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white"
android:textStyle="bold" />
<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Rua Padre Domingos Joaquim Pereira,1249"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="4760-563 Louro"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white"
android:background="@color/AMOB_gray"/>
<TextView
android:id="@+id/textView5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Vila Nova de Famalicão, Portugal"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView7"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Phone: (+351) 252 330 900"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView8"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Fax: (+351) 252 376 887"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView9"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="E-mail: comercial@amob.pt"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView6"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="GPS: 41º 26'.16''N / 8º32'31.89''W"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/gps_amob"
android:id="@+id/gps_map"
android:layout_weight="3"
android:layout_marginTop="10dp"
android:scaleType="fitXY"/>
<Button
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/btn_emailUs"
android:background="@drawable/round_buttons"
android:layout_marginTop="10dp"
android:text="Email us">
</Button>
<Button
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/btn_callUs"
android:background="@drawable/round_buttons_green"
android:layout_marginTop="10dp"
android:text="Call Us">
</Button>
</LinearLayout>
</FrameLayout>
我认为您应该使用fill_parent而不是match_parent作为容器的高度。 您的手机会认为它必须填满整个屏幕。 但这不是必需的,因为您的Android按钮(标题)界面。
首先,您在LinearLayout
中使用的weightsum
是无用的。 现在,为什么在移动设备中却看不到按钮,而在预览中却是因为在预览中隐藏了操作actionbar
。 现在,如果要在布局中显示按钮,则有两种方法:
您需要调整视图的大小并使它们变小。 ( 不可靠,不推荐 )
您需要在ScrollView
按钮上方的视图。 为了有效地做到这一点,请使您的scrollview weight = 1
并像上面代码中编写的那样设置按钮。
`
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="20dp">
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="AMOB Headquarters"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white"
android:textStyle="bold" />
<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Rua Padre Domingos Joaquim Pereira,1249"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/AMOB_gray"
android:fontFamily="serif"
android:text="4760-563 Louro"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Vila Nova de Famalicão, Portugal"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView7"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Phone: (+351) 252 330 900"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView8"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Fax: (+351) 252 376 887"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView9"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="E-mail: comercial@amob.pt"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView6"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="GPS: 41º 26'.16''N / 8º32'31.89''W"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<ImageView
android:id="@+id/gps_map"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:scaleType="fitXY"
android:src="@drawable/gps_amob" />
</LinearLayout>
</ScrollView>
<Button
android:id="@+id/btn_emailUs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/round_buttons"
android:text="Email us"></Button>
<Button
android:id="@+id/btn_callUs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:background="@drawable/round_buttons_green"
android:text="Call Us"></Button>
</LinearLayout>
`
我在这里要做的是在LinearLayout
添加一个Scrollview
和two Buttons
。 Scrollview
被赋予android:layout_weight="1"
。 现在发生的是,按钮将占据它们所需的空间,而其余空间将被ScrollView
覆盖。
将线性布局放入滚动视图中。 由于每个移动设备的屏幕尺寸都不同,因此最好将其放在滚动视图中。
<FrameLayout 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.example.tiagosilva.amob_android.ContactUsFragment"
android:background="@color/AMOB_gray">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="20dp"
android:weightSum="3">
<TextView
android:id="@+id/textView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="AMOB Headquarters"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white"
android:textStyle="bold" />
<TextView
android:id="@+id/textView3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Rua Padre Domingos Joaquim Pereira,1249"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="4760-563 Louro"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white"
android:background="@color/AMOB_gray"/>
<TextView
android:id="@+id/textView5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Vila Nova de Famalicão, Portugal"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView7"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Phone: (+351) 252 330 900"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView8"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="Fax: (+351) 252 376 887"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView9"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="E-mail: comercial@amob.pt"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textView6"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fontFamily="serif"
android:text="GPS: 41º 26'.16''N / 8º32'31.89''W"
android:textAppearance="@style/TextAppearance.AppCompat"
android:textColor="@android:color/white" />
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/gps_amob"
android:id="@+id/gps_map"
android:layout_weight="3"
android:layout_marginTop="10dp"
android:scaleType="fitXY"/>
<Button
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/btn_emailUs"
android:background="@drawable/round_buttons"
android:layout_marginTop="10dp"
android:text="Email us">
</Button>
<Button
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/btn_callUs"
android:background="@drawable/round_buttons_green"
android:layout_marginTop="10dp"
android:text="Call Us">
</Button>
</LinearLayout>
</ScrollView>
</FrameLayout>
这样的事情应该起作用。 希望这可以帮助!..
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.