无法访问纵向xml中的视图,但能够横向查看

时间:2018-08-16 20:31:48

标签: java android view screen-orientation id

我有一个ID为setBackground的相对布局。对于纵向XML版本,包含该文件的文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    android:id="@+id/setBackground"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    <!--so on-->

以下是横向版本:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/activity_main_inference"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp">

<android.support.constraint.Guideline
    android:id="@+id/guidelineLeft"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    app:layout_constraintGuide_percent="0.25" />
    <RelativeLayout
        android:id="@+id/setBackground"
        <!-- so on -->

此文件包含在我的主要xml中:

   <include
      android:id="@+id/result"
      layout="@layout/color_display" />

我正在尝试像这样访问RelativeLayout并设置背景:

View wrapper = findViewById(R.id.result);
wrapper.findViewById(R.id.setBackground).setBackgroundColor(ColorObj.parseColor(hex));

基本上,两个文件之间的唯一区别是使用准则的约束布局。 这适用于风景,但肖像出错,表示该元素不存在。怎么了?如何在不编写针对不同方向的单独Java的情况下访问视图?

0 个答案:

没有答案