問題タブ [coordinator-layout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
16279 参照

android - CoordinatorLayout と AppBarLayout の昇格

このようなAppBarレイアウトを作成しました

それは機能し、LinearLayout に影を落とします。

ただし、CoordinatorLayout の影に入れると、次のようになります。

アプリバーにその影を再び表示するにはどうすればよいですか?

ここに画像の説明を入力

0 投票する
1 に答える
547 参照

java - AppBarLayout が他のビューを match_parent に許可しない

Toolbar と TabLayout、ViewPager と FloatingActionMenu を含む AppBarLayout のレイアウトを使用しています。

私の問題は、AppBarLayout を使用すると、layout_height=match_parent を使用すると CoordinatorLayout 内の他のビューが画面全体と一致しなくなり、代わりに、この他のビューが AppBarLayout を除く親の残りの部分と一致することです。この動作は ViewPager に最適です。そうしないとコンテンツが AppBarLayout で覆われてしまうためですが、メニューが開いたときに画面を暗くできるように、FloatingActionMenu を画面全体に一致させる必要があります。

だから私の質問は: FloatingActionMenu が画面全体を引き継ぐようにするにはどうすればよいですか?

私のXML:

RelativeLayout をルート ビューとして使用するか、LinearLayout を使用して Toolbar と TabLayout を保持することで問題は解決しますが、CoordinatorLayout と AppBarLayout を使用してスクロール機能を追加する必要があります。

編集:

次の写真でわかるように、さまざまなデバイスでテストした後、この問題は新しいバージョンでのみ発生することがわかりました。

API 19: 古いバージョン: API 19

API 23:

新しいバージョン: API 23

0 投票する
1 に答える
1245 参照

android - Android Studio での CoordinatorLayout のレンダリングの問題

私はAndroid Studioを試していました。新しいプロジェクトを作成すると、自動生成されたxmlにはルートとしてCoordinatorLayoutがあります。しかし、私のxmlプレビューはレンダリングされません。CoordinatorLayoutをコメントアウトすると、正常にビルドされ、レンダリングも行われます。

ここに画像の説明を入力

そして、これは「 Androidバージョンのプレビュー」をオンにしたときです:

ここに画像の説明を入力

エラーメッセージも表示されません。だから、何が起こっているのかまったくわかりません。どう思う?

0 投票する
1 に答える
740 参照

android - Android バージョン 5 未満のデバイスではフローティング アクション ボタンが表示されない

何らかの理由で、フローティング アクション ボタンが 5 未満の Android バージョンのデバイスに表示されません。サポート ライブラリを使用しているため、CoordinatorLayout と FAB は 5 より前のバージョンでうまく動作するはずです。それは何ですか?

0 投票する
2 に答える
25304 参照

android - CollapsingToolbarLayout とスクロール中のツールバーの非表示

CoordinatorLayout と CollapsingToolbarLayout を使用して、組み合わせたレイアウトを作成しようとしています。

最初の状態で、一番上のページにいて、まだスクロールしていないとき、ツールバーを次のように拡張します (はい、実行しました)。

ここに画像の説明を入力

2 番目の状態では、下にスクロールし始めると、以下に示すように画像とツールバーが非表示になります (タブのみが表示されます)。

ここに画像の説明を入力

そして、最後の状態で、リストのある時点 (ただし、リストの一番上ではない) にあると、上にスクロールし始めたいと思います。以下に示すように、whowing を開始します (リストの一番上に到達しなかった場合、画像は表示されず、ツールバーのみが表示されます)。

ここに画像の説明を入力

最初の状態は達成できましたが、他の 2 つの状態には問題があります。CollapsingToolbarLayout 内にツールバーが実装されると、CollapsingToolbarLayout コンポーネントの外でツールバーを使用してできることの柔軟性が明確ではありません。ツールバーを非表示にすることはできません。そうすると、一番上に到達したときにのみ表示されます。

とにかく、現在の XML (以下に表示) は最初の画像が実装された状態ですが、下にスクロールし始めると、ツールバーは上部に留まり、非表示になりません。注: ツールバーを「固定」したままにするように指示する必要があります。そうしないと、ツールバー内の情報が消えて、空のツールバーだけが表示されるからです (これは別の記事で説明しますが、なぜこれが起こるのかを知るのは興味深いことです)。 .

ここに私の現在のxmlがあります:

0 投票する
8 に答える
17085 参照

android - Espresso、NestedScrollView または RecyclerView が CoordinatorLayout にある場合にスクロールが機能しない

CoordinatorLayoutなどの Espresso アクションの動作が壊れているようです。scrollTo()RecyclerViewActions.scrollToPosition()

NestedScrollView に関する問題

このようなレイアウトの場合:

最初の問題をNestedScrollView使用して内部の任意のビューにスクロールしようとすると、 . これは、このアクションがサポートするだけで拡張しないためです。この問題の回避策については、こちらで説明しています。基本的には、コードをコピーして、制約をサポートするように変更できます。が a にない場合は機能するようですが、 a の中に入れるとすぐにスクロールアクションが失敗します。ViewActions.scrollTo()PerformExceptionScrollViewNestedScrollViewscrollTo()NestedScrollViewNestedScrollViewCoordinatorLayoutCoordinatorLayout

RecyclerView の問題

NestedScrollView同じレイアウトの場合、を aに置き換えるRecyclerViewと、スクロールにも問題があります。

この場合、私は使用してRecyclerViewAction.scrollToPosition(position)います。とは異なりNestedScrollView、ここではスクロールが行われていることがわかります。ただし、間違った位置にスクロールしているようです。たとえば、最後の位置までスクロールすると、最後から 2 番目は表示されますが、最後の位置は表示されません。スクロールのRecyclerView外に移動すると、正常に動作します。CoordinatorLayout

現時点では、CoordinatorLayoutこの問題により、使用する画面用の Espresso テストを作成できません。同じ問題が発生したか、回避策を知っている人はいますか?

0 投票する
1 に答える
1176 参照

android - フローティング ボタンとアクティビティ/フラグメント アーキテクチャ

フローティング ボタンを実装する最適なアーキテクチャを見つけようとしています。これは私のシナリオです:

コーディネーターレイアウト、アプリバーレイアウト、ツールバー、フローティングボタン、およびフラグメントで使用するフレームレイアウトを備えた基本アクティビティがあります。最初のフラグメントにはビュー ページャーとタブ レイアウトが含まれ、各タブは別のフラグメント (recyclerview) です。問題は、同じものを実装する多くのアクティビティを持ちたくないので、アイテムをクリックすると別のフラグメントを開きたいということです。問題は、開いている新しいフラグメントにそのフローティング ボタンを付けたくないということです。

最適なアプローチはどれですか?

  1. フローティング ボタンがあるアクティビティとないアクティビティの 2 つがある
  2. 私がどのフラグメントであるかに応じて、フローティングボタンを非表示および表示します。
  3. 他のアプローチは素晴らしいでしょう..

これのアイデアはアーキテクチャを学ぶことです。どんな提案も私にとって素晴らしいでしょう

ありがとう