<com.hryt.design.base.HHConstraintLayout android:layout_width="wrap_content" android:layout_height="@dimen/dimen_416" android:visibility="@{isGuide ? View.GONE : View.VISIBLE}" android:background="@drawable/map_scroll"> <com.hryt.design.toggle.HHToggleButton android:id="@+id/route_plan_service" android:layout_width="@dimen/dimen_264" android:layout_height="@dimen/dimen_154" android:clickable="true" android:gravity="center" android:splitMotionEvents="false" android:text="@string/guide_route_along_way_service" android:textStyle="bold" android:textSize="@dimen/font_28" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:hryt_toggleType="rectangle"/> <com.hryt.design.toggle.HHToggleButton android:id="@+id/route_plan_cloudy" android:layout_width="@dimen/dimen_264" android:layout_height="@dimen/dimen_154" android:clickable="true" android:gravity="center" android:splitMotionEvents="false" app:layout_constraintTop_toTopOf="parent" android:layout_marginTop="@dimen/dimen_122" android:text="@string/guide_route_along_way_cloudy" android:textStyle="bold" android:textSize="@dimen/font_28" app:layout_constraintStart_toStartOf="parent" app:hryt_toggleType="rectangle"/> <com.hryt.design.toggle.HHToggleButton android:id="@+id/route_road" android:layout_width="@dimen/dimen_264" android:layout_height="@dimen/dimen_154" android:clickable="true" android:gravity="center" android:splitMotionEvents="false" app:layout_constraintBottom_toBottomOf="parent" android:text="@string/guide_route_along_way_road" android:textStyle="bold" android:textSize="@dimen/font_28" app:layout_constraintStart_toStartOf="parent" app:hryt_toggleType="rectangle"/> </com.hryt.design.base.HHConstraintLayout>
时间: 2024-02-14 22:06:26 浏览: 24
根据代码,你使用了 ConstraintLayout 作为父容器,但是没有给每个子控件设置完整的约束条件,因此可能导致一些控件边缘消失。你可以检查每个子控件的约束条件是否完整,确保它们在父容器中有正确的位置和大小。
例如,第一个子控件 route_plan_service,它的约束条件如下:
```
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
```
这意味着它应该在父容器的左上角。你可以检查这些约束条件是否正确,并为其他子控件设置类似的约束条件。
此外,如果你想让子控件在父容器中垂直居中,可以使用以下约束条件:
```
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintVerticalBias="0.5"
```
这将使子控件在父容器的垂直中心位置。希望这些提示对你有所帮助。
相关问题
Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 11624 (RouteMsgThread), pid 11485 (hryt.navigation)
这是一个致命信号,通常是由于代码中某个错误或异常引起的。这个信号是由操作系统发送给进程的,以指示进程出现了严重问题,需要立即终止。在这个例子中,信号是由线程 `RouteMsgThread` 中的错误或异常引起的,线程所在的进程为 `hryt.navigation`。可能需要更多的上下文和信息,例如应用程序的版本、设备的操作系统版本、设备的硬件信息等,才能更好地解决问题。
android.os.strictmode.DiskReadViolation at android.os.StrictMode$AndroidBlockGuardPolicy.onReadFromDisk(StrictMode.java:1596) at libcore.io.BlockGuardOs.open(BlockGuardOs.java:249) at libcore.io.ForwardingOs.open(ForwardingOs.java:166) at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:7844) at libcore.io.MemoryMappedFile.mmapRO(MemoryMappedFile.java:54) at libcore.timezone.ZoneInfoDb.loadData(ZoneInfoDb.java:185) at libcore.timezone.ZoneInfoDb.loadTzDataWithFallback(ZoneInfoDb.java:119) at libcore.timezone.ZoneInfoDb.<clinit>(ZoneInfoDb.java:46) at java.util.TimeZone.getTimeZone(TimeZone.java:579) at java.util.TimeZone.getDefaultRef(TimeZone.java:724) at java.util.TimeZone.getDefault(TimeZone.java:700) at java.text.SimpleDateFormat.initializeCalendar(SimpleDateFormat.java:743) at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:687) at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:666) at com.hryt.remoter.uimce.app.CrashHandler.<init>(CrashHandler.java:53) at com.hryt.remoter.uimce.app.CrashHandler.<clinit>(CrashHandler.java:49) at com.hryt.remoter.uimce.app.CrashHandler.getInstance(CrashHandler.java:65) at com.hryt.remoter.uimce.app.RemoterApplication.onCreate(RemoterApplication.java:32) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1192) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7013) at android.app.ActivityThread.access$1300(ActivityThread.java:238) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1921) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7958) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:603) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
这个堆栈跟踪信息显示出现了一个严格模式的磁盘读取违规问题,可能是在读取磁盘文件时出现了问题。关于为什么会出现这个问题,需要根据具体的应用程序代码来进行分析,但是建议你检查一下是否在主线程中进行了磁盘读取操作,因为在 Android 应用程序中进行耗时的 I/O 操作可能会导致主线程阻塞,从而导致 ANR(应用程序无响应)错误。另外,你可以尝试使用异步任务或者线程池等方式来执行磁盘读取操作,以避免阻塞主线程。同时,也可以在应用程序的代码中添加 try-catch 块来捕获可能出现的异常,以避免应用程序崩溃。