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

Androidでのアクティビティの作成または管理に関する質問。Androidアプリケーションでは、アクティビティは、ユーザーが何かを実行できるようにするユーザーインターフェイスを提供するコンポーネントです。簡単な例は、電話をかける、写真を撮る、電子メールを送信する、または地図を表示することです。

30
インスタンス状態の保存を使用してアクティビティ状態を保存する方法は?
私はAndroid SDKプラットフォームに取り組んできましたが、アプリケーションの状態を保存する方法は少し不明確です。したがって、「Hello、Android」の例のこのマイナーなリツールを考えると: package com.android.hello; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloAndroid extends Activity { private TextView mTextView = null; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mTextView = new TextView(this); if (savedInstanceState == null) { mTextView.setText("Welcome to HelloAndroid!"); } …

30
回転Androidでのアクティビティの再開
私のAndroidアプリケーションでは、デバイスを回転させる(キーボードをスライドさせる)と、Activity再起動されます(onCreateが呼び出されます)。さて、これはおそらく想定どおりの方法ですが、onCreateメソッドで多くの初期設定を行うため、次のいずれかが必要です。 すべての初期設定を別の関数に入れて、デバイスの回転またはすべてで失われないようにします。 onCreate再度呼び出されないようにしてください。レイアウトは調整されるか、 onCreate呼び出されないように、アプリを縦向きのみに制限します。

30
Androidアプリケーションのアクティビティ間でデータを渡すにはどうすればよいですか?
ログインページからログインした後button、それぞれにサインアウトするシナリオがありますactivity。 をクリックするとsign-out、session idサインインしているユーザーのがサインアウトに渡されます。誰でもsession id利用できるようにする方法について誰かが私を案内できますactivitiesか? このケースの代替案

10
AndroidでstartActivityForResultを管理する方法
私の活動では、メインの活動から2番目の活動をと呼んでいstartActivityForResultます。2番目のアクティビティーでは、このアクティビティーを終了するいくつかのメソッド(おそらく結果なし)がありますが、そのうちの1つだけが結果を返します。 たとえば、メインアクティビティから2番目のアクティビティを呼び出します。このアクティビティでは、カメラがあるかどうかなど、携帯電話のいくつかの機能を確認しています。ない場合は、このアクティビティを閉じます。また、準備中MediaRecorderまたはMediaPlayer問題が発生した場合は、このアクティビティを閉じます。 そのデバイスにカメラがあり、録画が完全に完了している場合、ビデオを録画した後、ユーザーが[完了]ボタンをクリックすると、結果(録画したビデオのアドレス)がメインアクティビティに返されます。 メインアクティビティの結果を確認するにはどうすればよいですか?


30
onActivityResultがフラグメントで呼び出されていません
このフラグメントをホストするonActivityResultアクティビティは、カメラアクティビティが戻ったときに呼び出されます。 私のフラグメントは、カメラが写真を撮るために送信された意図で結果のアクティビティを開始します。画像アプリケーションは正常に読み込まれ、写真を撮って戻ります。onActivityResultしかし、ヒットされることはありません。ブレークポイントを設定しましたが、何もトリガーされません。フラグメントは持つことができますonActivityResultか?提供機能なのでそう思います。なぜこれがトリガーされないのですか? ImageView myImage = (ImageView)inflatedView.findViewById(R.id.image); myImage.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(cameraIntent, 1888); } }); @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { if( requestCode == 1888 ) { Bitmap photo = (Bitmap) data.getExtras().get("data"); ((ImageView)inflatedView.findViewById(R.id.image)).setImageBitmap(photo); } }


14
ジレンマ:フラグメントvsアクティビティを使用する場合:
Activitiesアプリケーションの単一の画面を表すFragmentsように設計されている一方で、ロジックが埋め込まれた再利用可能なUIレイアウトとして設計されていることは知っています。 ずっと前まで、開発すべきだと言っていたアプリケーションを開発しました。Activityアプリケーションの画面を表すを作成し、ViewPagerまたはのフラグメントを使用しましたGoogle Maps。ListFragment何度か再利用できるUIやその他のUIを作成することはめったにありません。 最近、私は唯一の2含むプロジェクトにつまずいActivities1がありSettingsActivity、他方ですMainActivity。のレイアウトには、MainActivity非表示のフルスクリーンUIフラグメントが多数含まれており、1つだけが表示されています。Activity論理多く存在するFragmentTransitionsアプリケーションの異なる画面間。 このアプローチについて私が気に入ったのは、アプリケーションがを使用しているため、ActionBarそのままの状態であり、画面切り替えアニメーションと一緒に移動しないことActivityです。これにより、画面の遷移がより滑らかになります。 だから私はこのトピックに関するあなたの現在の開発方法を共有することを求めていると思います、それは一見すると意見ベースの質問のように見えるかもしれませんが、私はそれをAndroidの設計とアーキテクチャの質問と見なします...実際には意見ベースのもの。 UPDATE(2014年1月5日):によってこのプレゼンテーションに続いて、エリック・バークから広場、(私が言っているのAndroid開発者のための便利なツールの多くの偉大なプレゼンテーションであると私は広場にどのような方法で関連しておりません) http://www.infoq.com/presentations/Android-Design/ 過去数か月の個人的な経験から、アプリケーションを構築する最善の方法は、アプリケーションのフローを表すフラグメントのグループを作成し、それらすべてのフラグメントを1つに表示することであることがわかりましたActivity。したがって、基本的にActivitiesは、アプリケーション内のフローの数と同じ数になります。そうすることで、アクションバーはすべてのフローの画面にそのまま残りますが、フローを変更すると再作成されるため、非常に理にかなっています。エリックバークが述べているように、そして私も実現しActivitiesたように、彼が「神」の活動と呼んでいるものを混乱させるので、できるだけ少ないものを使用するという哲学はすべての状況に当てはまるわけではありません。

30
Androidで1つのアクティビティから別のアクティビティにオブジェクトを渡す方法
ある顧客クラスのオブジェクトを送信して別のオブジェクトにActivity表示しようとしていますActivity。 顧客クラスのコード: public class Customer { private String firstName, lastName, Address; int Age; public Customer(String fname, String lname, int age, String address) { firstName = fname; lastName = lname; Age = age; Address = address; } public String printValues() { String data = null; data = "First Name :" + …




9
例:メッセージングを使用したアクティビティとサービス間の通信
アクティビティとサービスの間でメッセージを送信する方法の例を見つけることができませんでした。これを理解するのに何時間も費やしました。他の人が参照できるサンプルプロジェクトを次に示します。 この例では、サービスを直接開始または停止し、サービスから個別にバインド/バインド解除することができます。サービスの実行中は、10 Hzで数値が増加します。アクティビティがにバインドされてServiceいる場合、現在の値が表示されます。データは整数および文字列として転送されるため、2つの異なる方法でその方法を確認できます。アクティビティには、メッセージをサービスに送信するためのボタンもあります(増分値を変更します)。 スクリーンショット: AndroidManifest.xml: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.exampleservice" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <service android:name=".MyService"></service> </application> <uses-sdk android:minSdkVersion="8" /> </manifest> res \ values \ strings.xml: <?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">ExampleService</string> <string name="service_started">Example Service started</string> …


28
進行状況ダイアログとバックグラウンドスレッドがアクティブなときに画面の向きの変更を処理する方法
私のプログラムはバックグラウンドスレッドでいくつかのネットワークアクティビティを実行します。開始する前に、進捗ダイアログをポップアップします。ダイアログはハンドラーで閉じられます。ダイアログが表示されているときに(およびバックグラウンドスレッドが表示されているときに)画面の向きが変わる場合を除いて、これはすべて正常に機能します。この時点で、アプリはクラッシュまたはデッドロックするか、すべてのスレッドが終了するまでアプリがまったく機能しないという奇妙な段階に入ります。 画面の向きの変更を適切に処理するにはどうすればよいですか? 以下のサンプルコードは、私の実際のプログラムが行うこととほぼ一致します。 public class MyAct extends Activity implements Runnable { public ProgressDialog mProgress; // UI has a button that when pressed calls send public void send() { mProgress = ProgressDialog.show(this, "Please wait", "Please wait", true, true); Thread thread = new Thread(this); thread.start(); } public void run() { Thread.sleep(10000); Message …

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