タグ付けされた質問 「android-support-library」

Androidサポートライブラリには、新しいプラットフォームからバックポートされたAPIと、ユーティリティ機能を提供するAPIが含まれています。


19
NestedScrollViewのViewPager
折りたたみヘッダー(垂直スクロール)上のViewPager(水平スクロール)の一種であるGoogleニューススタンドのようなインターフェースを作成する必要があります。私の要件の1つは、Google IO 2015で提示された新しいデザインサポートライブラリを使用することです(http://android-developers.blogspot.ca/2015/05/android-design-support-library.html) Chris Banesが作成したサンプル(https://github.com/chrisbanes/cheesesquare)に基づいて、折りたたみ動作を実行できるようになりましたが、基本的なLinearLayout(水平スクロールなし)を使用しました。 LinearLayoutをViewPagerに置き換えようとしたところ、空白の画面が表示されました。私は遊んだ:幅、重さ、あらゆる種類のビューグループ。ただし、まだ空白の画面。ViewPagerとNestedScrollViewはお互いが好きではないようです。 Horizo​​ntalScrollViewを使用して回避策を試しました:機能しますが、PagerTitleStrip機能の利点と1つのパネルへのフォーカスが失われます(2つのパネル間で水平方向に停止できます)。 誰かが私を解決策に導くことができるならば、今私にはこれ以上のアイデアはありません... ありがとう これが私の最新のレイアウトファイルです: <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout 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="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="@dimen/header_height" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="match_parent" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginEnd="64dp" app:expandedTitleMarginStart="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <include layout="@layout/part_header" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_collapseMode="parallax"/> <android.support.v7.widget.Toolbar android:id="@+id/activity_main_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:id="@+id/activity_main_nestedscrollview" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <android.support.v4.view.ViewPager android:id="@+id/activity_main_viewpager" …

12
ツールバーのホームアイコンの色を変更する方法
私はandroid.support.v7.widget.Toolbarを使用していて、この投稿からハンバーガーアイコンの色を白に変更する方法を学びましたが、上向き/後ろ向きの矢印は、呼び出したときに暗い色のままです setDisplayHomeAsUpEnabled(true); 矢印も白にするにはどうすればよいですか? setDisplayHomeAsUpEnabled()を呼び出すと、ツールバーは次のようになります。 ...そしてこれが私のstyles.xmlファイルの関連部分です: <style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> <item name="colorPrimary">@color/primary</item> <item name="colorPrimaryDark">#194C5F</item> <item name="colorAccent">@color/accent</item> <item name="drawerArrowStyle">@style/WhiteDrawerIconStyle</item> </style> <style name="WhiteDrawerIconStyle" parent="Widget.AppCompat.DrawerArrowToggle"> <item name="spinBars">true</item> <item name="color">@android:color/white</item> </style>

10
フラグメントからツールバーを取得する方法?
私が持っているActionBarActivityとNavigationDrawerし、使用support_v7 Toolbarアクションバーなど。私のフラグメントの1つで、ツールバーにカスタムビューがあります。他のフラグメントToolbarではタイトルを表示する必要があります。 Toolbarフラグメントからカスタマイズするためのインスタンスはどのように取得しますか?でActionBarを取得できますがgetActivity().getActionBar()、setTitle()このインスタンスActionBar を呼び出しても何も起こりません。 UPD: 私の場合 ((ActionBarActivity) getActivity()).getSupportActionBar().setTitle(); (MrEngineer13が言ったように)onHiddenChanged()から呼び出すため、最初のフラグメント作成では機能しません。今、私はonCreateView()にさらに1つ追加し、それは正常に動作します。

6
Fragment ActionBarCompat内からのgetSupportActionBar
私が使用して新しいプロジェクトを始めているAppCompat/ActionBarCompatにv7サポートライブラリを。getSupportActionBarフラグメント内からの使用方法を理解しようとしています。フラグメントをホストする私のアクティビティは拡張されますが、フラグメントActionBarActivityの同様のサポートクラスが表示されません。 私の断片の中から public class CrimeFragment extends Fragment { //... getActivity().getSupportActionBar().setSubtitle(R.string.subtitle); // getSupportActionBar is not defined in the v4 version of Fragment //... } それを使用するためのGoogleページ(http://android-developers.blogspot.in/2013/08/actionbarcompat-and-io-2013-app-source.html)は、v4フラグメントに変更はないはずであると述べています。すべてのgetActivity()呼び出しをにキャストする必要がありActionBarActivityますか?それは貧弱なデザインのようです。

13
Appcompatv7-v21ナビゲーションドロワーにハンバーガーアイコンが表示されない
最新のappcompatサポートライブラリでロリポップスタイルのナビゲーションドロワーを実装していますが、問題はハンバーガーアイコンが表示されないことです。戻るアイコンのみが表示されます。 これは私の活動コードです import android.os.Bundle; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarActivity; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.widget.Toolbar; import android.view.View; public class Home extends ActionBarActivity { private DrawerLayout mDrawerLayout; private ActionBarDrawerToggle mDrawerToggle; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_home); initViews(); } private void initViews(){ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); toolbar.setTitleTextColor(getResources().getColor(android.R.color.white)); setSupportActionBar(toolbar); …

11
ViewPager.setOffscreenPageLimit(0)が期待どおりに機能しない
ViewPagerインスタンスで使用するフラグメントはかなりのリソースを消費するため、一度に1つだけロードしたいと思います。私が次のことを試みると: mViewPager.setOffscreenPageLimit(0); mViewPager.setAdapter(mPagerAdapter); 私のFragmentStatePagerAdapter.getItem(int position)オーバーライド関数は3回呼び出されますmViewPager.setOffscreenPageLimit(1)。これは、を呼び出したときに発生します。オフスクリーンページを0に指定したので、1回だけ呼び出されると思います。 私は、私が呼び出した場合ので、私は、すべてを正しく呼んでいると信じてmViewPager.setOffscreenPageLimit(2)、FragmentStatePagerAdapter.getItem(int position)私が期待するように5回と呼ばれています。 ViewPagerには少なくとも1つのオフスクリーンページが必要ですか、それともここで何か問題がありますか?

16
入れ子になったフラグメントが遷移アニメーション中に消える
ここではシナリオがあります:活動は、フラグメントが含まAターン用途では、getChildFragmentManager()フラグメントを追加するA1と、A2その中にonCreateそのように: getChildFragmentManager() .beginTransaction() .replace(R.id.fragmentOneHolder, new FragmentA1()) .replace(R.id.fragmentTwoHolder, new FragmentA2()) .commit() これまでのところ、非常に良い、すべてが期待どおりに実行されています。 次に、アクティビティで次のトランザクションを実行します。 getSupportFragmentManager() .beginTransaction() .setCustomAnimations(anim1, anim2, anim1, anim2) .replace(R.id.fragmentHolder, new FragmentB()) .addToBackStack(null) .commit() 移行中、enterフラグメントのアニメーションBは正しく実行されますが、フラグメントA1とA2は完全に消えます。[戻る]ボタンでトランザクションを元に戻すと、それらは適切に初期化され、popEnterアニメーション中に正常に表示されます。 私の簡単なテストでは、奇妙になりました-子フラグメントのアニメーションを設定すると(以下を参照)、exitフラグメントを追加するとアニメーションが断続的に実行されますB getChildFragmentManager() .beginTransaction() .setCustomAnimations(enter, exit) .replace(R.id.fragmentOneHolder, new FragmentA1()) .replace(R.id.fragmentTwoHolder, new FragmentA2()) .commit() 達成したい効果は単純です- フラグメント(anim2)のアニメーションexit(またはそれである必要がありますpopExitか?A)を実行して、ネストされた子を含むコンテナー全体をアニメーション化します。 それを達成する方法はありますか? 編集:ここでテストケースを見つけてください Edit2:静的アニメーションを試してみてくれた@StevenByleに感謝します。どうやらアニメーションごとに(トランザクション全体にグローバルではなく)アニメーションを設定できます。つまり、子は無期限の静的アニメーションセットを持つことができ、親は異なるアニメーションを持つことができ、1つのトランザクションですべてをコミットできます。 。以下の説明と更新されたテストケースプロジェクトを参照してください。

28
BottomSheetでのユーザーのドラッグを無効にする
でのユーザーのドラッグを無効にしようとしていBottomSheetます。無効にしたい理由は2つあります。1.がListView下にスクロールしないようにしている。2.ユーザーがドラッグを使用して却下したくないが、にボタンがあるBottomSheetView。これは私がやったことです bottomSheetBehavior = BottomSheetBehavior.from(bottomAnc); bottomSheetBehavior.setBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() { @Override public void onStateChanged(@NonNull View bottomSheet, int newState) { if (newState == BottomSheetBehavior.STATE_EXPANDED) { //Log.e("BottomSheet", "Expanded"); } else if (newState == BottomSheetBehavior.STATE_COLLAPSED) { //Log.e("BottomSheet", "Collapsed"); } } @Override public void onSlide(@NonNull View bottomSheet, float slideOffset) { // React to dragging events bottomSheet.setOnTouchListener(new View.OnTouchListener() …


5
RequiresApiとTargetApiのAndroidアノテーション
RequiresApiとはTargetApiどう違いますか? Kotlinのサンプル: @RequiresApi(api = Build.VERSION_CODES.M) @TargetApi(Build.VERSION_CODES.M) class FingerprintHandlerM() : FingerprintManager.AuthenticationCallback() 注:FingerprintManager.AuthenticationCallbackAPIが必要ですM 注2:TargetApi lintを使用しない場合、エラーで失敗する class requires api level 23...

7
エラー:レンダリングの問題次のクラスが見つかりませんでしたandroid.support.v7.internal.widget.ActionBarOverlayLayout
私はAndroidアプリ開発の初心者です。Android Studio 1.1.0で新しいプロジェクトを作成すると、このエラーが発生します " レンダリングの問題次のクラスが見つかりませんでしたandroid.support.v7.internal.widget.ActionBarOverlayLayout " 今、私はこれについてグーグルで検索しました、そして私はほとんどの人から与えられたおそらく3つの解決策を見つけました。 彼らが言うには: (プレビューウィンドウペインから)apiを22から21に変更するか、 アプリのテーマを「プロジェクトテーマ」から他のテーマに変更します。 プロジェクト構造->依存関係に正しいappcompat-v7ライブラリをインポートしていることを確認して ください。次の手順を参照してください。サポートライブラリ機能のプロジェクト識別子を依存関係セクションに追加します。たとえば、appcompatプロジェクトを含めるには、次の例に示すように、compiles「com.android.support:appcompat-v7:18.0.+」を依存関係セクションに追加します。 dependencies { ... compile "com.android.support:appcompat-v7:18.0.+" } 注:Androidサポートライブラリは最新です(SDK Managerを使用してインストールされています)。 最初の2つの手順に従って、エラーを削除しました。しかし、これらは永続的な解決策ではないように思います。2番目のステップは、一時的な回避策のようです。最初のステップについても疑問があります。エラーを削除するには、APIを22から21に変更します。最後に、アプリがAndroid 5.1.1(API 22)で機能しなくなり、Android 5.0に制限されます。 .1以下のみ(API 21)。私の疑念は有効ですか?3番目のステップについては、この問題の永続的な解決策ですか? PS:タグが一致しないため申し訳ありませんが、サイトの評判のため、正確なタグを追加することはできませんでした

14
BottomSheetDialogFragmentの状態を展開に設定します
Android Support Design Library(v23.2.1)BottomSheetDialogFragmentをBottomSheetBehavior#setState(STATE_EXPANDED)使用して、拡張されたフラグメントの状態をどのように設定しますか? https://code.google.com/p/android/issues/detail?id=202396のコメント: 下部のシートは、最初はSTATE_COLLAPSEDに設定されています。拡張する場合は、BottomSheetBehavior#setState(STATE_EXPANDED)を呼び出します。ビューレイアウトの前にメソッドを呼び出すことはできないことに注意してください。 提案の練習は(最初に膨張するビューが必要ですが、私は私がフラグメントにBottomSheetBehaviourを設定しますかどうかはわかりませんBottomSheetDialogFragment)。 View bottomSheet = coordinatorLayout.findViewById(R.id.bottom_sheet); BottomSheetBehavior behavior = BottomSheetBehavior.from(bottomSheet);

25
ステータスバーが白くなり、その背後にあるコンテンツが表示されない
私はマシュマロでAppCompatを試しています。透明なステータスバーが必要ですが、白くなります。私はいくつかの解決策を試しましたが、うまくいきませんでした(透明なステータスバーがwindowTranslucentNavigation = "false"で機能しない、Lollipop:statusBarの後ろに色を透明に設定して描画します)。ここに関連するコードがあります。 私のstyles.xml <style name="Bacon" parent="Theme.Bacon"/> <style name="Theme.Bacon" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorPrimary">@color/theme_primary</item> <item name="colorPrimaryDark">@color/theme_primary_dark</item> <item name="colorAccent">@color/theme_accent</item> <item name="windowActionBar">false</item> <item name="windowActionBarOverlay">true</item> <item name="windowNoTitle">true</item> <item name="android:windowBackground">@color/background_material_light</item> </style> <style name="Theme.Bacon.Detail" parent="Bacon"/> v21 <style name="Bacon" parent="Theme.Bacon"> <item name="android:windowDrawsSystemBarBackgrounds">true</item> </style> <style name="Theme.Bacon.Detail" parent="Bacon"> <item name="android:statusBarColor">@android:color/transparent</item> </style> アクティビティ <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.v4.view.ViewPager android:id="@+id/pager" android:layout_width="match_parent" …

7
CoordinatorLayoutとは何ですか?
新しいAndroidサポートデザインライブラリのデモアプリを見たところです。githubの Chris Banesが提供しています。アプリ全体で、頻繁にCoordinatorLayout使用されます。また、のようなサポート設計ライブラリクラスの多くのFloatingActionButton、SnackBar、AppBarLayoutときに使用される内部などが異なる挙動をCoordinatorLayout。 誰かが何かにいくつかのライトを当てるしてくださいすることができCoordinatorLayout、それが他と異なっているとどのようにViewGroupアンドロイドでの、または少なくとも学習に向けて正しいパスを提供しますCoordinatorLayout。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.