問題タブ [extras]
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.
android - エクストラの受け渡しと画面の回転
この種の質問は定期的に表示されます。これが以前にカバーされていれば申し訳ありませんが、私は初心者であり、適切な答えを見つけることができませんでした。クラスとアクティビティ間のコミュニケーションの正しい実装を扱います。
ギャラリーアプリを作りました。主なアクティビティは3Main
つあります。1つはパターンを使用してファイル名を検索することです。1Thumb
つは、パターンに一致するすべての画像をグリッドビューのサムネイルとして表示し、Photo
アクティビティは、の親指をクリックするとフルサイズの画像を開きますThumbs
。ファイル名(配列)とグリッドビューでクリックされた親指の(an )をPhoto
介してアクティビティに渡します。Intent
position
int
この3番目Photo
のアクティビティには、1つのビューしかTouchImageView
ありません。aは、画像のショートクリックの場所(左、右、または中央)に応じて、前/次の切り替えとズームに適応しました。Photo
さらに、 EXIF情報を表示するためにロングクリックリスナーを追加しました。
うまくいっていますが、実装に満足していません...いくつかのことが正しくありません。
私が経験している問題の1つは、画像の右側をクリックしてPhoto
アクティビティの次の画像を表示すると、正常に切り替わりますが(position++
)、デバイスを回転させると元の画像がposition
表示されることです。
何が起こっているのかというPhoto
と、画像を回転させると破壊され、何らかの理由でsuper.onCreate(savedInstanceState)
、Extras(親アクティビティではなくでposition
変更されたもののみ)を再度ロードすることなく、再起動します。Photo
startActivityForResult
の代わりに試してみましたstartActivity
が、失敗しました...
もちろん、position
データを保存するために工夫したことはできますが、活動の仕組みがわからない「概念」があるはずなので、正しくやりたいと思っています。
誰かが私が間違っていることを説明してもらえますか?それは私が望むものを実装するための最良の方法であり、その理由は何ですか?
どうもありがとう!!!
android - バンドル エクストラの java.lang.NullPointerException = data.getExtras();
画像をキャプチャしてギャラリーに保存しようとしています。そのために onCreate my code
と
画像をキャプチャできるようになりましたが、その後エラーが発生します
ヌルポインタ例外がオンラインです
それで、問題は何ですか?
android - Android でインテントからエクストラを取得する
バンドルから「n」個の文字列値を取得したいのですが、「送信ボタン」をクリックすると avd がクラッシュします。
アクティビティ 1
アクティビティ 2
それが私のコードです。私はどこを台無しにしていますか?
LOGCAT(更新)
android - Android Preference.getExtras()は何に使用されますか?
Preferenceクラスには、getExtras()というメソッドがあります。
プリファレンスインテントに関連している場合と関連していない場合がありますが、エクストラはインテントを直接使用して取得および配置できます。
PreferenceクラスにメソッドputExtra/s()がない場合
、getExtras()の目的は何ですか?どのシナリオで使用されていますか?
android - Android Intent.getStringExtra() は null を返します
これは、エクストラに文字列が追加される方法です。
これは私がそれらを抽出しようとする方法ですonActivityResult()
:
しかし、2 番目のコード ブロックの後にname
とdesc
are がnull
ありますprior
が、適切な値があります。さらに、デバッガーでは、必要な文字列が含まれていることがわかりますdata.mExtras.mMap
が、最初のリクエストの後でのみです。
android - ユーザー定義オブジェクトの配列リストを Intent android に渡す
次のように、配列リストの構造をインテントに渡そうとしています。呼び出し関数で使用しています
そして、呼び出された関数で
私は両方のクラスでシリアライズ可能な実装を与えましたが、行開始アクティビティの呼び出し関数でマーシャリングできません..実行時エラーが発生しました。進め方を教えてください!
編集 1: スタック トレース:
私の議会クラスには、セッターとゲッターを備えた 5 つの文字列があります。
android - リストの保存方法> SQLite データベースへ
List<HashMap<String,String>>
小さなデータベースにa を保存したい。それを達成する方法..このリストをアプリの多くのアクティビティで使用したいと考えています。私の他の活動と同様に、この特定のリストにアクセスする他の方法はありますか?
android - アクティビティは最後のインテント エクストラを取得しません
開始アクティビティのようにトリガーされるアクティビティ A があります。
oncreate では、一部のデータが欠落している場合、アクティビティ A は startactivity を使用して新しいアクティビティ B を作成します。その後、finish() も呼び出します。このようにして、アクティビティ B のみが含まれるバックスタックを取得します。
ここまでは順調ですね。
ここで、アクティビティ B でいくつかのタスクが完了すると、startactivity(activityA) が呼び出され、その後自分自身で finish() が呼び出されます。また、いくつかのエクストラを渡し、アクティビティ A はそれらを問題なく読み取ります。
これで、アクティビティ A だけで形成されたバックスタックができました。実際、「戻る」を押すと、ランチャーに戻ります。
さて、アクティビティ A で、操作中に保留中のインテントを含む通知を作成します。インテントは、新しいエクストラ値を使用してアクティビティ A 自体を呼び出しますが、以前にアクティビティ B から渡された同じパラメーターを使用します。
ここで、ランチャーに戻り、通知領域を開いて通知をタップすると、期待どおりアクティビティ A に戻りますが、onResume でエクストラを読むと、アクティビティ B によって渡されたものを取得します ("テスト 1")!
これは一般的な「pendingintent を適切に更新する」問題ではないと思います。最初の startactivity には pendingintent がまったく含まれていないためです。なにか提案を?