将项目锚定到屏幕中心并带有一些偏移
Posted
技术标签:
【中文标题】将项目锚定到屏幕中心并带有一些偏移【英文标题】:Anchoring item to center of the screen with some offset 【发布时间】:2016-09-26 09:44:04 【问题描述】:我正在尝试构建一个带有聊天气泡的屏幕。问题是当我使用android:layout_centerHorizontal="true"
时,气泡会精确到中心并根据文本大小在两个方向上扩展。但我想将这个气泡的中心 20dp 锚定到屏幕或父布局的中心。
<View
android:id="@+id/anchor"
android:layout_
android:layout_
android:layout_centerHorizontal="true" />
<TextView
android:id="@+id/textview"
android:text="Some Text"
style="Style_with_layout_height_width_etc"
android:layout_alignParentBottom="true"
android:layout_alignStart="@+id/anchor"
android:layout_marginStart="-20dp"
android:layout_marginBottom="20dp"/>
我已经尝试过诸如具有 0dp 宽度和高度的锚视图之类的方法,但它没有用。
EDIT-1:添加 XML 代码以供进一步参考
EDIT-2:使用约束布局和设置水平偏差帮助我解决了问题。
【问题讨论】:
请分享你的一些代码 你现在可以看看代码@ReazMurshed 问题还是不是很清楚。尝试添加有关您正在获得什么以及您想要什么的图片。 简单来说,我想将文本视图的中心固定到屏幕上的某个点。在我的情况下,中心应该是屏幕中心右侧的 20dp,即 360dp 屏幕上的 200dp。我认为您不需要此图像 是的,我仍然需要它的基本草图,以便我可以看到TextView
在此处输入长文本和短文本以查看差异时的外观。
【参考方案1】:
考虑使用新的ConstraintLayout
来根据您的需要精确调整视图的位置。
参考- https://developer.android.com/training/constraint-layout/index.html
【讨论】:
感谢您的建议,但它没有锚定中心的选项 小小的修补帮助我解决了这个问题。非常感谢。以上是关于将项目锚定到屏幕中心并带有一些偏移的主要内容,如果未能解决你的问题,请参考以下文章