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

フラグメントは、Androidアプリの再利用可能な動作またはユーザーインターフェースの一部を表します。

9
android-support-v4でのPreferenceFragmentの代替
PreferenceFragmentsがこのライブラリでサポートされていないことに気付いたので、アプリの開発が突然停止しました。新人のAndroid開発者がこの障害を克服するために使用できる代替手段はありますか? これが今の私のメインウィンドウです <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TabHost android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <FrameLayout android:id="@android:id/tabcontent" android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="0"/> <FrameLayout android:id="@+android:id/realtabcontent" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1"/> </LinearLayout> <TabWidget android:id="@android:id/tabs" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="0" /> </TabHost> </LinearLayout> 私のTabActivityでは、オンラインで見つけたものを使用しています。これがスニペットです: public class TabControlActivity extends FragmentActivity implements TabHost.OnTabChangeListener { public …

4
Androidでナビゲーションドロワーのセクション区切りを1つ追加する方法
この画像のようなナビゲーションドロワーがあります。(Neptuneを区切る線のように)セクション区切りを追加したいと思います。シンプルなようですが、自分のケースに役立つ情報をウェブ上で見つけることができません。 ここに私のMainActivityがあります: public class MainActivity extends Activity { private DrawerLayout mDrawerLayout; private ListView mDrawerList; private ActionBarDrawerToggle mDrawerToggle; private CharSequence mDrawerTitle; private CharSequence mTitle; private String[] mPlanetTitles; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mTitle = mDrawerTitle = getTitle(); mPlanetTitles = getResources().getStringArray(R.array.planets_array); mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerList = (ListView) findViewById(R.id.left_drawer); …

5
アニメーションイベント終了Android
ビュー(フラグメント内にあります)にフェードアウトアニメーションがあり、アニメーションが発生するたびに、ビューが終了した後、ビューが再描画されます。私はやっている周りの仕事を見つけましたview.SetVisibility(View.GONE)。しかし、それはアニメーションが終了するのを待ちません。このsetVisibilityコードは、アニメーションが終了した後でのみ実行したいと思います。それを行う最良の方法は何ですか?

21
フラグメントからのカスタムActionBarタイトルの設定
メインではFragmentActivity、次のActionBarようにカスタムタイトルを設定します。 LayoutInflater inflator = (LayoutInflater) this .getSystemService(Context.LAYOUT_INFLATER_SERVICE); View v = inflator.inflate(R.layout.custom_titlebar, null); TextView tv = (TextView) v.findViewById(R.id.title); Typeface tf = Typeface.createFromAsset(this.getAssets(), "fonts/capsuula.ttf"); tv.setTypeface(tf); tv.setText(this.getTitle()); actionBar.setCustomView(v); これは完璧に機能します。ただし、他を開いFragmentsたら、タイトルを変更したい。Activityこれを行うためにメインにアクセスする方法がわかりませんか?過去に、私はこれをしました: ((MainFragmentActivity) getActivity()).getSupportActionBar().setTitle( catTitle); 誰かが適切な方法についてアドバイスできますか? XML: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/transparent" > <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="5dp" android:ellipsize="end" android:maxLines="1" android:text="" android:textColor="#fff" …

9
フラグメントのAndroidSharedPreferences
Fragment内のSharedPreferencesを読み込もうとしています。私のコードは、他のアクティビティで設定を取得するために使用するものです。 SharedPreferences preferences = getSharedPreferences("pref", 0); エラーが発生します Cannot make a static reference to the non-static method getSharedPreferences(String, int) from the type ContextWrapper 私はこれらのリンクをたどろうとしましたが、運が悪かったのですが、静的メソッドと 静的SharedPreferencesを介してSharedPreferencesにアクセスしました。解決策をありがとうございます。

10
Androidツールバーさまざまなフラグメントのメニュー項目を追加する
ツールバーとナビゲーションドロワーがあります。アプリを起動すると、ツールバーとナビゲーションドロワーが作成されます。ナビゲーションドロワーのアイテムをクリックすると、新しいフラグメントが開始され、同じツールバーが維持されます。特定のフラグメントを開始するときに、検索、追加、編集などのメニュー項目をツールバーに基本的に追加するにはどうすればよいですか?プログラムの開始時には必要ありませんが、動的に作成されます。また、これらのボタンをクリックして、他のフラグメントを開始させるにはどうすればよいでしょうか。あるフラグメントでは、ツールバーの編集ボタンが別のフラグメントの編集ボタンと比較して特定のことを実行するようにしたいのです。ありがとう! Menu_toolbar: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/edit" android:orderInCategory="1" android:title="Edit" app:showAsAction="always" android:icon="@drawable/pencil_icon"/> <item android:id="@+id/add" android:orderInCategory="1" android:title="Add" app:showAsAction="always" android:icon="@drawable/plus_icon"/> ツールバー: <?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="55dp" android:background="#10a1ff" android:title="Home" />

9
フラグメントによるアクションバーのアップナビゲーション
タブ付きのActionbar / viewpagerレイアウトで、A、B、Cの 3つのタブがあります。タブC tab(fragment)で、フラグメントDなどの別のフラグメントを追加しています。と DFragment f= new DFragment(); ft.add(android.R.id.content, f, ""); ft.remove(CFragment.this); ft.addToBackStack(null); ft.commit(); DFragmentのonResumeのアクションバーを変更して、ボタンを追加します。 ActionBar ab = getActivity().getActionBar(); ab.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); ab.setDisplayHomeAsUpEnabled(true); ab.setDisplayShowHomeEnabled(true); DFragmentで、ハードウェア(電話)の[戻る]ボタンを押すと、CFragmentが選択された元のTabbed(ABC)レイアウトに戻ります。アクションバーのアップボタンでこの機能を実現するにはどうすればよいですか?

2
方向変更時にフラグメントを処理するフールプルーフな方法
public class MainActivity extends Activity implements MainMenuFragment.OnMainMenuItemSelectedListener { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager .beginTransaction(); // add menu fragment MainMenuFragment myFragment = new MainMenuFragment(); fragmentTransaction.add(R.id.menu_fragment, myFragment); //add content DetailPart1 content1= new DetailPart1 (); fragmentTransaction.add(R.id.content_fragment, content1); fragmentTransaction.commit(); } public void onMainMenuSelected(String …

12
Androidのフラグメント。画面の回転または構成の変更中にAsyncTaskを保持する
私はスマートフォン/タブレットアプリで作業しており、APKを1つだけ使用し、画面サイズに応じて必要に応じてリソースを読み込んでいます。最適な設計の選択は、ACLを介してフラグメントを使用することであるようです。 このアプリは、これまでアクティビティベースのみで正常に動作してきました。これは、アクティビティでAsyncTasksとProgressDialogsを処理して、画面が回転したり、通信中に構成が変更されたりした場合でも機能させるためのモッククラスです。 アクティビティの再現を避けるためにマニフェストを変更することはありません。マニフェストを変更したくない理由はたくさんありますが、主に公式ドキュメントでは推奨されておらず、これまで管理していないため、推奨しないでください。ルート。 public class Login extends Activity { static ProgressDialog pd; AsyncTask<String, Void, Boolean> asyncLoginThread; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.login); //SETUP UI OBJECTS restoreAsyncTask(); } @Override public Object onRetainNonConfigurationInstance() { if (pd != null) pd.dismiss(); if (asyncLoginThread != null) return (asyncLoginThread); return super.onRetainNonConfigurationInstance(); } private void …

8
XMLでのAndroidonClickとOnClickListener
以前にも同じような言葉で質問されたことがあると思いますが、これは違います。私はAndroidアプリの開発にかなり慣れていないので、android:onclick=""XML属性とsetOnClickListenerメソッドの違いについて3つの質問があります。 2つの違いは何ですか?2つの実装の違いは、コンパイル時または実行時、あるいはその両方で見つかりますか? どのユースケースがどの実装に有利ですか? Androidでフラグメントを使用すると、実装の選択にどのような違いがありますか?

12
戻るボタンのようにボタンを使用して現在のフラグメントを閉じる方法は?
Imagebuttonを使用して現在のフラグメントを閉じようとしました。 私はFragment-Aにいます。ボタンをクリックすると、Fragment-Bに変わります。 そして、Fragment-Bのボタンをクリックすると、Fragment-Cに変わり、Fragment-Bが閉じます。 Fragment-Cの戻るボタンをクリックすると、Fragment-Aに戻ります。 私が試したコードは次のようなものです camera_album = (ImageButton) view.findViewById(R.id.camera_album); camera_album.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { closefragment(); Fragment fragment = FileBrowserFragment.newInstance(null, null, null) ; MainActivity.addFragment(LocalFileBrowserFragment.this, fragment) ; } }); private void closefragment() { getActivity().getFragmentManager().beginTransaction().remove(this).commit(); } フラグメントBの戻るボタンをクリックすると、フラグメントCに変わります。 しかし、Fragment-Cの[戻る]ボタンをクリックしても、Fragment-Aに戻りません。空の背景に戻ります。Fragment-Aに戻りたい場合は、もう一度[戻る]ボタンをクリックする必要があります。 だから、現在のフラグメントを完全に閉じていないようです。 Androidの戻るボタンのように現在のフラグメントを終了するにはどうすればよいですか?

14
ソフトキーボードをフラグメント内から隠す方法は?
をFragmentActivity使用しViewPagerていくつかのフラグメントを提供しています。それぞれがListFragment次のレイアウトになっています。 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="8dp"> <ListView android:id="@id/android:list" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <EditText android:id="@+id/entertext" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> </LinearLayout> アクティビティを開始すると、ソフトキーボードが表示されます。これを修正するために、フラグメント内で次のことを行いました。 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { //Save the container view so we can access the window token viewContainer = container; …

4
Android-フラグメントトランザクションのカスタムアニメーションが実行されていない
サポートパッケージv4でGoogleAPI 8(Android 2.2)を使用しています。 エラーやアニメーションは発生しません。 トランザクション: FragmentTransaction transaction = manager.beginTransaction(); transaction.replace(R.id.content, myFragment); transaction.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_right); transaction.commit(); アニメーション: slide_in_left.xml <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" > <translate android:duration="700" android:fromXDelta="-100%" android:toXDelta="0%" > </translate> </set> slide_out_right.xml <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:duration="700" android:fromXDelta="0%" android:toXDelta="100%" > </translate> </set> ここで何が起こっているのか誰か知っていますか?

17
onActivityResultからDialogFragmentを表示
私のフラグメントのonActivityResultに次のコードがあります。 onActivityResult(int requestCode, int resultCode, Intent data){ //other code ProgressFragment progFragment = new ProgressFragment(); progFragment.show(getActivity().getSupportFragmentManager(), PROG_DIALOG_TAG); // other code } ただし、次のエラーが発生します。 Caused by: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState 誰かが何が起こっているのか、または私がこれを修正する方法を知っていますか?Androidサポートパッケージを使用していることに注意してください。

15
AndroidアクティビティClassNotFoundException-すべてを試しました
アプリをフレームワークライブラリとアプリケーションにリファクタリングしましたが、エミュレーターでアプリを起動しようとすると、次のエラースタックトレースが表示されます。 06-02 18:22:35.529: E/AndroidRuntime(586): FATAL EXCEPTION: main 06-02 18:22:35.529: E/AndroidRuntime(586): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.matthewrathbone.eastersays/com.matthewrathbone.eastersays.EasterSimonSaysActivity}: java.lang.ClassNotFoundException: com.matthewrathbone.eastersays.EasterSimonSaysActivity in loader dalvik.system.PathClassLoader[/data/app/com.matthewrathbone.eastersays-1.apk] 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 06-02 18:22:35.529: E/AndroidRuntime(586): at android.os.Handler.dispatchMessage(Handler.java:99) 06-02 18:22:35.529: E/AndroidRuntime(586): at …

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