之前软输入模式没有问题,但是在包含之后ConstraintLayout,当键盘出现时,片段的内容不会向上移动.
表现
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ru.pinspb.pinsupport">
<uses-feature
android:name="android.software.leanback"
android:required="false" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="ru.pinspb.pinsupport.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="ru.pinspb.pinsupport.permission.C2D_MESSAGE" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<application
android:name=".PinApp"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme.NoActionBar">
<activity
android:name=".auth.ui.HomeActivity"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".front.ui.FrontActivity"
android:launchMode="singleTop" />
<activity
android:name=".chats.ui.InitChatActivity"
android:launchMode="singleTop"
android:windowSoftInputMode="stateHidden" />
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
分段
public …Run Code Online (Sandbox Code Playgroud) 我正在使用android.support.constraint.ConstraintLayout布局简单卡片的内容视图.
我每次都会在以下情况下随机更改XML:
Design选项卡Preview打开一个窗格时(在这种情况下,在我的更改期间更改会发生更改).随机变化包括:
layout_marginEnd)tools:layout_editor_absoluteX值问题:
请看一下这个文件diff,它是在切换到Design选项卡时自动生成的:

PS.:我的Android Studio版本是2.2.3; 我在macOS Sierra上运行它.
正如所建议的,在制作之后layout_height="match_parent",我不经常修改,但是当我在Layout Design'er中编辑布局时,我的XML仍然搞砸了:
这次我想layout_marginTop通过设计UI 进行设置(所选行是我想要添加的),但我还得到了其他不需要的更改:
layout_marginStart 删除;app:layout_constraintBottom_toBottomOf引用的ID有一个前缀"+"符号,这意味着,这些ID是新声明的,所以当我使用Goto declaration功能时,我将不得不从列表中选择它 - 而不是所需的行为.tools:layout_editor_absoluteX得到补充.我可以忽略它,但仍然 - 不是我想要发生的事情.android android-studio android-constraintlayout android-layout-editor
布局时我遇到了一个非常奇怪的问题.它看起来像在eclipse XML编辑器和我的三星galaxy中设计但它在我的旧手机xperia x10 mini中搞砸了.我只能假设这也会在其他设备中出现.
如果有人可以帮忙解决这个问题,我将不胜感激.
以下是两个屏幕截图和XML代码.
它在eclipse布局编辑器和我的三星galaxy S4 mini中看起来如何
它在Sony xperia x10 mini中的外观如何
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:orientation="vertical"
android:gravity="center"
android:layout_height="wrap_content" >
<FrameLayout
android:layout_marginTop="7dp"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<View android:layout_marginTop="19dp" android:layout_marginLeft="19dp" android:layout_height="249dp" android:layout_width="2dp" android:background="#B2CFEF"/>
<View android:layout_marginTop="19dp" android:layout_marginLeft="189dp" android:layout_height="249dp" android:layout_width="2dp" android:background="#B2CFEF"/>
<View android:layout_marginTop="18dp" android:layout_marginLeft="20dp" android:layout_height="2dp" android:layout_width="170dp" android:background="#B2CFEF"/>
<View android:layout_marginTop="267dp" android:layout_marginLeft="19dp" android:layout_height="2dp" android:layout_width="171dp" android:background="#B2CFEF"/>
<ImageView style="@style/ta_img" android:id="@+id/ta_lu" android:layout_marginTop="52dp" />
<ImageView style="@style/ta_img" android:id="@+id/ta_lc" android:layout_marginTop="124dp" />
<ImageView style="@style/ta_img" android:id="@+id/ta_ld" android:layout_marginTop="197dp" />
<ImageView style="@style/ta_img" android:id="@+id/ta_ru" android:layout_marginLeft="170dp" android:layout_marginTop="52dp" />
<ImageView style="@style/ta_img" android:id="@+id/ta_rc" android:layout_marginLeft="170dp" android:layout_marginTop="124dp" />
<ImageView …Run Code Online (Sandbox Code Playgroud) android android-layout android-linearlayout android-framelayout android-constraintlayout
我有一个如下的观点:
<org.rayanmehr.atlas.shared.customview.CustomTextView
android:id="@+id/tvDownVoteCount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
app:layout_constraintVertical_bias="0"
app:layout_constraintTop_toBottomOf="@+id/anchorHelper"
app:layout_constraintLeft_toRightOf="@+id/tvDownVoteIcon"
app:layout_constraintBottom_toBottomOf="@+id/imgComment"
/>
Run Code Online (Sandbox Code Playgroud)
如何在app:layout_constraintVertical_bias没有在我的活动中再次设置整个属性集的情况下以编程方式修改值或任何其他约束属性?
更新后 com.android.support.constraint:constraint-layout:1.1.0
约束布局崩溃说:
约束布局的所有子项都应该具有使用约束集的id
我已经为所有视图设置了ID,即使它崩溃了.
java.lang.RuntimeException: All children of ConstraintLayout must have ids to use ConstraintSet at android.support.constraint.ConstraintSet.clone(ConstraintSet.java:687) at com.zoho.notebook.views.SettingsViewNavBar.showNoteSettingsView(SettingsViewNavBar.java:594) at com.zoho.notebook.views.SettingsViewNavBar.onClick(SettingsViewNavBar.java:303)
Run Code Online (Sandbox Code Playgroud)
此问题仅发生在平板电脑设备上.
Attempt to invoke virtual method
'boolean androidx.constraintlayout.solver.widgets.ConstraintWidgetContainer.isRtl()'
on a null object reference.
Run Code Online (Sandbox Code Playgroud)
谁遇到过类似的问题?更新前一切正常。
我开发了一个应用程序,可以在移动设备上从json检索数据到本地数据库,并使用本地数据库显示它RecyclerView,我的容器布局如下所示:
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="end"
android:layout_gravity="end"
android:id="@+id/detailContainerLayout"
android:baselineAligned="true"
android:background="@drawable/border_bottom"
>
<TextView
android:id="@+id/article_title"
style="@style/TextAppearance.AppCompat.Subhead"
android:layout_width="220dp"
android:layout_height="wrap_content"
android:paddingLeft="5dp"
android:paddingTop="2dp"
android:layout_marginRight="9dp"
android:layout_marginLeft="4dp"
android:textColor="@color/buttons_background"
android:fontFamily="sans-serif-condensed"
android:maxLines="2"
android:textSize="@dimen/text_main"
android:layout_gravity="end"
android:gravity="start"
android:layoutDirection="rtl"/>
<TextView
android:id="@+id/article_date"
style="@style/TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="8dp"
android:paddingRight="9dp"
android:textColor="@color/textColor"
android:maxLines="1"
android:layout_gravity="end"
android:gravity="end"
android:textSize="@dimen/date_size"
android:layout_marginTop="8dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:layout_gravity="center_horizontal|bottom"
android:gravity="center_horizontal|bottom"
android:layout_marginTop="10dp"
>
<TextView
android:id="@+id/article_place"
style="@style/TextAppearance.AppCompat.Body1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/textColor"
android:layout_gravity="start|bottom"
android:gravity="start|bottom"
android:layout_weight="1.1"
android:maxLines="1"
android:fontFamily="sans-serif"
android:paddingBottom="5dp"
android:layoutDirection="rtl"
android:layout_marginRight="3dp"
/>
<TextView
android:id="@+id/article_placeIcon"
style="@style/TextAppearance.AppCompat.Body1"
android:layout_width="wrap_content" …Run Code Online (Sandbox Code Playgroud) android android-layout android-relativelayout android-constraintlayout
我正在尝试从RelativeLayout迁移到ConstraintLayout,但我在将AdMob AdView添加到底部以及其上方的其余内容时遇到问题.例如,使用RelativeLayout就是这么简单.您只需要放置android:layout_alignParentBottom="true"AdView和android:layout_above="@+id/adView"包含内容的视图.
我试图了解如何使用ConstraintLayout而不是RelativeLayout将此示例代码和这两行代码迁移到等效代码.
拜托,有人可以帮我解决这个问题吗?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/adView"/>
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:layout_marginTop="5dp"
ads:adSize="BANNER"
ads:adUnitId="@string/ad_id_banner">
</com.google.android.gms.ads.AdView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我app:layout_constraintBottom_toTopOf="@+id/adView"在adView上面和adView app:layout_constraintBottom_toBottomOf="parent"上测试了我想要的东西,但它不起作用,因为这些东西不在它后面的adView之上.此外,adView不会居中.这非常令人沮丧.
android android-layout android-relativelayout android-constraintlayout
我只是在编辑文本的高度达到布局高度的末尾时,我试图在编辑文本中显示滚动条.如果我输入/添加空格,但是当我的文本到达编辑文本宽度的末尾时,它会导致问题.一旦我的文本到达我的编辑文本宽度的末尾,它就开始向我显示滚动条,而当我到达屏幕的(高度)结束时它应该显示.
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/editFeedback"
android:layout_width="0dp"
android:layout_height="0dp"
android:bufferType="spannable"
android:gravity="top"
android:hint="Some text"
android:inputType="textCapSentences|textMultiLine"
android:minHeight="120dp"
android:overScrollMode="ifContentScrolls"
android:scrollbarStyle="insideInset"
android:scrollbars="vertical"
android:selectAllOnFocus="true"
android:textIsSelectable="true"
android:textSize="16sp"
app:layout_constraintBottom_toTopOf="@+id/buttonSend"
app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
app:layout_constraintHeight_default="wrap"
app:layout_constraintStart_toStartOf="@id/guidelineStart"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
app:layout_constraintVertical_chainStyle="packed"
tools:text="" />
<Button
android:id="@+id/buttonSend"
style="@style/Widget.AppCompat.Button.Colored"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:text="Send"
android:textAllCaps="false"
app:layout_constraintBottom_toBottomOf="@+id/barrierEnd"
app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
app:layout_constraintTop_toBottomOf="@+id/editFeedback" />
<TextView
android:id="@+id/Footer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_marginBottom="100dp"
android:text="This is a footer"
android:textSize="15sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<android.support.constraint.Guideline
android:id="@+id/guidelineStart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_begin="8dp" />
<android.support.constraint.Guideline
android:id="@+id/guidelineEnd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_end="8dp" />
<android.support.constraint.Barrier
android:id="@+id/barrierEnd"
android:layout_width="wrap_content" …Run Code Online (Sandbox Code Playgroud)