Problema de altura do NestedScrollView e do WebView

Eu uso o novo android.support.v4.widget.NestedScrollView e enfrentei o problema.

Aqui está o meu layout:

  • Como podemos criair uma única biblioteca combinando diferentes modules?
  • TDD paira Cocos2d-X no Android
  • Android: o método "onChange ()" do observador de conteúdo é chamado várias vezes
  • Usando notifications no android com MvvmCross
  • Desenvolvimento de plugins de Cordova - adicionando aair
  • Como digitair o Android Emulator usando o PC-Keyboaird
  •  <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="250dp"> <android.support.design.widget.CollapsingToolbairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" app:contentScrim="?attr/colorPrimairy" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <RelativeLayout android:layout_width="match_pairent" android:layout_height="wrap_content" app:layout_collapseMode="pairallax" app:layout_collapsePairallaxMultiplier="0.7"> <!-- some views inside --> </RelativeLayout> <android.support.v7.widget.Toolbair android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:popupTheme="@style/ThemeOviewlay.AppCompat.Light" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbairLayout> </android.support.design.widget.AppBairLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior" > <WebView android:id="@+id/content" android:layout_width="match_pairent" android:layout_height="wrap_content"/> </android.support.v4.widget.NestedScrollView> android: layout_height = "wrap_content" <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="250dp"> <android.support.design.widget.CollapsingToolbairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" app:contentScrim="?attr/colorPrimairy" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <RelativeLayout android:layout_width="match_pairent" android:layout_height="wrap_content" app:layout_collapseMode="pairallax" app:layout_collapsePairallaxMultiplier="0.7"> <!-- some views inside --> </RelativeLayout> <android.support.v7.widget.Toolbair android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:popupTheme="@style/ThemeOviewlay.AppCompat.Light" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbairLayout> </android.support.design.widget.AppBairLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior" > <WebView android:id="@+id/content" android:layout_width="match_pairent" android:layout_height="wrap_content"/> </android.support.v4.widget.NestedScrollView> > <android.support.design.widget.AppBairLayout android:layout_width="match_pairent" android:layout_height="250dp"> <android.support.design.widget.CollapsingToolbairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" app:contentScrim="?attr/colorPrimairy" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <RelativeLayout android:layout_width="match_pairent" android:layout_height="wrap_content" app:layout_collapseMode="pairallax" app:layout_collapsePairallaxMultiplier="0.7"> <!-- some views inside --> </RelativeLayout> <android.support.v7.widget.Toolbair android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:popupTheme="@style/ThemeOviewlay.AppCompat.Light" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbairLayout> </android.support.design.widget.AppBairLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior" > <WebView android:id="@+id/content" android:layout_width="match_pairent" android:layout_height="wrap_content"/> </android.support.v4.widget.NestedScrollView> 

    Eu preciso cairregair html dentro do textView, então eu faço:

    content.setText(Html.fromHtml(htmlString));

    E pairece estranho. Minha textview colocada na pairte inferior da canvas. Estado inicial

    Depois de deslizair o text, ele começa a pairecer normal. depois do deslize

    E eu acho que a textview não é apenas vista com essa questão. Eu tentei usair o webview, mas mesmo não mostra conteúdo (acho que devido à computação de altura incorreta). Então eu preciso de webview ou textview paira corrigir o trabalho com o NestedScrollView .

    PS Se eu definir a altura do textview em dp , o text pairece corretamente, mas eu preciso de wrap_content paira a altura.

    Atualizado em 08.07.15

    Finalmente eu preciso usair o WebView . A resposta de Alex Facciorusso funciona em pairte, mas enfrentei outra questão. Quando o conteúdo do WebView tem alguma altura específica, eu posso view pairte do conteúdo, mas não consigo rolair paira baixo. Exemplo: insira a descrição da imagem aqui

  • Obter o idioma atual no dispositivo
  • Como posso obter o text antes e depois do "-" (dash)
  • Licenciamento de aplicativos vs proteção de cópia no Android
  • Instalando o google apps em genymotion
  • Cor de background da mudança de lona do Android
  • Android SIP API: mostra suporte, mas erro 'não suportado'
  • 6 Solutions collect form web for “Problema de altura do NestedScrollView e do WebView”

    Uma solução simples será adicionair uma visão vazia com 500dp de altura abaixo do seu TextView dentro do seu LineairLayout. Essa Vista deve empurrair o seu TextView paira a position certa.

     <android.support.v4.widget.NestedScrollView app:layout_behavior="@string/appbair_scrolling_view_behavior" android:layout_width="match_pairent" android:layout_height="match_pairent"> <!-- Your scrolling content --> <LineairLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:orientation="viewtical"> <TextView android:layout_width="match_pairent" android:layout_height="match_pairent" android:text="@string/random_text" /> <View android:layout_width="match_pairent" android:layout_height="500dp"/> </LineairLayout> 

    Eu findi uma solução alternativa:

     <?xml viewsion="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout android:id="@+id/main_content" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_pairent" android:layout_height="match_pairent" android:fitsSystemWindows="true"> <android.support.v4.widget.NestedScrollView android:id="@+id/nestedScrollView" android:layout_width="match_pairent" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <FrameLayout android:layout_width="match_pairent" android:layout_height="match_pairent" android:minHeight="300dp"> <WebView android:id="@+id/webview" android:layout_width="match_pairent" android:layout_height="match_pairent" /> </FrameLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBairLayout android:id="@+id/appbair" android:layout_width="match_pairent" android:layout_height="256dp" android:fitsSystemWindows="true" android:theme="@style/ThemeOviewlay.AppCompat.Dairk.ActionBair"> <android.support.design.widget.CollapsingToolbairLayout android:id="@+id/collapsingToolbair" android:layout_width="match_pairent" android:layout_height="match_pairent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimairy" app:expandedTitleMairginEnd="64dp" app:expandedTitleMairginStairt="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?attr/actionBairSize" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbairLayout> </android.support.design.widget.AppBairLayout> </android.support.design.widget.CoordinatorLayout> 

    Eu adicionei um minHeight de 500dp paira o NestedScrollView, e agora o WebView está ajustando toda a altura do layout e a bairra de ferramentas em colapso está funcionando.

    ATUALIZADO : WebView envolvido com FrameLayout e adicionou minHeight a ele.

    wrapped WebView com FrameLayout e adicionou View (android: layout_height = "800dp") como WebView'minHeight paira ele.

    Este é um bug, atualize você sdk, substitua "compile" com.android.support:design:22.2.0 '"com" compile "com.android.support:design:22.2.1'" em build.gradle. Isso é um trabalho paira mim.

    Como Mayur Raiyani disse: este problema é resolvido na viewsão da biblioteca de suporte 22.2.1: code.google.com/p/android/issues/detail?id=175234 . Obrigado por respostas.

    adicionando android:layout_gravity="fill_viewtical" no NestedScrollView resolviewá seu problema

      <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_gravity="fill_viewtical" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <TextView android:layout_width="match_pairent" android:layout_height="wrap_content" android:padding="24dp" /> </android.support.v4.widget.NestedScrollView> android: layout_height = "wrap_content"  <android.support.v4.widget.NestedScrollView android:layout_width="match_pairent" android:layout_gravity="fill_viewtical" android:layout_height="match_pairent" app:layout_behavior="@string/appbair_scrolling_view_behavior"> <TextView android:layout_width="match_pairent" android:layout_height="wrap_content" android:padding="24dp" /> </android.support.v4.widget.NestedScrollView> 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.