問題タブ [findviewbyid]
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 - nullを返すfindViewById
私はこのレイアウトを持っています:
すべてが期待どおりに機能します。ただし、を検索するために呼び出した場合、findViewById
nullが返されます。Activity
R.id.singleCalendar1
私は無駄に掃除と更新を試みました。
を使用してビューを膨らませ、LayoutInflater.from(this).inflate(R.id.calendar_layout, null)
その子を見つけてから、singleCalendar1IDを見つけることを考えました...
私は本当に何をすべきかわかりません。後知恵は大歓迎です。
android - findViewByIdは、別のフラグメントからのビューに対してnullを返します-ビューのIDは-1です
編集:愚かなユーザーエラー、私は不正な形式のXMLを持っていました。
-
3つのフラグメントが含まれているアクティビティがあります。あるフラグメントのonResume()で、アクティビティを使用して別のフラグメントからビューを取得しようとしています。findViewById()ですが、そのメソッドは、特定の1つのフラグメントからのビューに対してnullを返します。他の2つのフラグメントのいずれかのビューは問題ありません。
getRootView()と次のすばやくハッキングされたコードを使用してビューツリー全体をダンプすると、問題のビューは実際にビューツリーの一部であることがわかりますが、IDは-1です。
そのフラグメント内のすべてのビューのIDが-1であるのはなぜですか?
編集:好奇心旺盛な方のために、ここにダンプされたビューツリーがあります。問題のあるビューは、2番目のブロック内のビュー(ID 2131165209)です。
編集2:関連するすべてのXMLは次のとおりです。最初に「フラグメントコンテナ」レイアウト、次に個々のフラグメントのレイアウト。「中央、半分」のコメント以降は、現時点では使用されていませんが、完全を期すために含まれています。
これがトップバーの代わりになるレイアウトです。そのIDは問題ありません:
下部のバーで置き換えられるレイアウトは次のとおりです。そのIDは壊れています:
そして最後に、これが私が現在真ん中で置き換えているレイアウトです。そのIDは問題ありません。
android - AlertDialog.Builder で findViewById() を使用すると NullPointerException が発生する
これは私のコードです
この行には NullPointerException があり、AlertDialog.Builder を使用しているため、datePicker は findById ではなかったと思います。
cal.set(datePicker.getYear(),datePicker.getMonth(), datePicker.getDayOfMonth());
使っadb.findViewById();
てみましたが間違いです(メソッドfindViewById(int)はAlertDialog.Builder型に対して未定義です)。助けてくれませんか?
android - 実際のアクティビティを取得するには?
多分これはこれまでで最もばかげた質問かもしれませんが、実際のActivity
オブジェクトを取得するのに少し苦労しています。
私の目的:
さまざまな からエラー処理を抽出するために、静的メソッドをActivity
持つクラスを作成しました。ErrorHandler
このようなメソッドは、たとえば次のようになります。
メソッドにアクセスするには、 as パラメータfindViewById(...)
を渡す必要があります。ここでさまざまな質問を読んでいるように、実行中の外部から sActivity
にアクセスする方法は他にありません。しかし、それ自体から、どうすればこのオブジェクトにアクセスできるのでしょうか? theも the もオブジェクトではありません。View
Activity
Activity
Context
MyActivity.class
Activity
android - IDで文字列を検索しようとしたときのNullpointer
以下のコードを使用して、id
;でリソースを検索しています。
私getStringIdentifier()
は働いていますが、テキストを設定しようとすると、が表示されますNullPointerException
。
を使用して、更新したいが含まれているファイルsetContentView
に焦点を合わせました。golders.xml
id
プロジェクトのクリーニングを試しましたが、何も実行されていません。アイデアはありますか?!ありがとう!
編集:
android - View.findViewById() が null を返す
私はこのコードを持っています:
デバッグ時、v には ID が と等しい MenuView が含まれますR.id.listViewMenu + 1
。もちろん、これは menu.setColors で NPE をスローします。
R.id.listViewMenu に、XML でその ID を持つビューにつながらない ID が含まれているのはなぜですか?
プロジェクトをクリーンアップしようとしましたが、それでも同じままです。
編集: 要求されたファイルを投稿しています。
sidemenu.xml
編集:問題は解決しました。
findViewById が null を返すためにここに来る人へ: プロジェクトをクリーンアップします。うまくいかない場合は、プロジェクトをもう一度クリーンアップします。うまくいかない場合は、すべてのプロジェクトをクリーンアップしてください。それが機能するまで。うまくいかない場合は、質問してください。
android - surfaceview+ボタンfindviewbyidはnullを返します
私のコードは大丈夫ですが、残念ながら私のコードはnullポインタ例外を与えます。findviewbyidの前にsetcontentviewを書くことによってそれが起こらないことを知っていますが、そうすることによって私の表面は更新されません。私はこれについてたくさん検索しようとしましたが、これに対する適切な答えを得ることができません。
一方、表面活動のコード:-
とxml:-
android - 文字列変数を使用してIDでビューを見つける方法は?
私はアンドロイドアプリを書いていて、ネストされたループでボタンのグリッドを初期化しようとしています.
私はもともと研究を通じてこの現在の解決策を見つけましたが、何がうまくいかないのかわかりません。
何らかの理由で id が常に 0 に設定されているため、bpiles[0][0] が null に設定されている場合、null ポインター例外が発生します。
私は小さな解決策をたくさん試しましたが、何もうまくいきませんでした。
誰かが私の問題が何であるかを理解しているか、これに対するより良い解決策を持っていますか?
ああ、私はこの投稿を見たときにこれを思いつきました。 バリアント文字列を含む Android findViewbyId
android - Android service has to be static and can't reference my text input which implements findViewById
Basically I have created an app into which the user enters a number (in seconds). They then click a button and a service is created which runs a countdown starting at the number of seconds entered. However in my service I reference variables such as:
This 'breaks' the service as it is static and can't reference findViewById. I have tried for hours to work around this but I have no clue, any help much appreciated!
android - findViewById その他のレイアウト
私は2つのxmlを持っています。名前はformOne.xmlとformTwo.xmlです
formOne.xml は次のようになります。
および fomTwo.xml :
名前は FormOne.java と FormTwo.java です。
FormOne.java :
}
および FormTwo.java :
editTextName から値を取得したいのですが、Toast を使用して FormTwo.java に値を表示できます。
しかし、myapplicationは強制的に閉じます。バンドルでデータを渡さずに値editTextNameを取得するにはどうすればよいですか。FormOne.java には値 editTextName を送信するボタンがないためです。
前もって感謝します