問題タブ [android-inflate]

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.

0 投票する
1 に答える
618 参照

android - View.layout(...) のオーバーライドでの VirtualMachineError

Android は致命的なエラーをスローし、メソッドをオーバーライドしたクラスを拡張します。

コードにコメントを付けるかどうかは関係ありません。アプリケーションは、このオーバーライドされた関数を削除するだけで機能します。

エラー:

何か案は?

編集:他の方法で問題を修正しました。ドローアブル生成コードを他のイベントに移動しました。しかし興味深いのは、このメソッドをオーバーライドしようとすると、なぜ VirtualMachineError が発生するのかということです。

更新:MyButtonから拡張するViewと、同じエラーが発生しました。

アップデート:

追加のメッセージが見つかりました:

ついに私はアンドロイド2.3.3で見つけました。View.layout が定義されました:

愚かな質問で申し訳ありません。

0 投票する
1 に答える
817 参照

android - LayoutInflater は毎回 xml をロードしますか?

LayoutInflater は、それを使用してビューをロードするたびに xml レイアウト リソースをロードしますか?

たとえば、同じレイアウト ID で 100 個のビューを作成したい場合、同じ XML ファイルを 100 回解析しますか、それとも Android フレームワークのキャッシュ システムがありますか?

0 投票する
1 に答える
1637 参照

android - カスタムレイアウトはxmlウィジェットを膨らませる必要があります

私はカスタムを持っていますLinearLayout。そのレイアウトの中に、いくつかのウィジェットを配置したいと思います。実行時にウィジェットを作成することもできますが、XMLからウィジェットをロードしたいと思います。

LinearLayouts以下にあるものは機能しますが、一方が他方の内側に2つ作成されていると思います。この例では、単純にButtonとを作成EditTextしますCustomLayout。XMLを使用して、これを行うにはどうすればよいですか?

ここにもう少し詳細があります(編集:この例の下に、修正されたバージョンが含まれています):

そして、CustomLayoutコンテンツのXMLは次のとおりです。

そして最後に、LinearLayoutのコードは次のとおりです。

修正されたバージョン

そして、CustomLayoutコンテンツのXMLは次のとおりです。

CustomLayoutをインスタンス化するコード

そして最後に、CustomLayoutのコードは次のとおりです。

0 投票する
1 に答える
318 参照

android - 動的レイアウト データを使用した ListView でのメモリ使用量

行ごとにネストされたデータを持つカスタム ListView に取り組んでいます。行ごとにチェックボックスを使用して人の名前を表示し、その人に関連付けられた 1 対多の電話番号の ListView にサブ行を動的に追加したいと考えています。

それは現在働いています。ただし、大規模なデータセットでは、メモリ使用量が多いため、速度が低下したりクラッシュしたりします。私がやろうとしていることを達成するためのより良い方法はありますか?

これが私が見たいものの例です:

ArrayAdapter の getView() 関数で現在使用しているコードを次に示します。いくつかクリーンアップしようとしたので、コンパイル エラーがある場合は、クリーンアップによるタイプミスである可能性があります。

}

0 投票する
1 に答える
1271 参照

android - getView インフレータ

これは初歩的な質問かもしれませんが、知りたいだけです: getView() メソッド内でインフレータを初期化するとき、これらの行の違いは何ですか:

フォローアップの質問: Inflater の初期化に使用するのに最適なのはどれですか? 返信ありがとうございます。

0 投票する
3 に答える
592 参照

android - Inflated AlertDialogs unreadable on Android 4.X while looking perfect on Android 2.X

In order to show dialogs with rich content and input elements, I use Android's AlertDialog.Builder to create an object of AlertDialog and then I use the system's LayoutInflater to set the content (setView(...)) to some XML layout file.

This looks perfect on Android 2.X (dark background, white text):

enter image description here

But on Android 4.X it is not readable at all:

enter image description here

Note: These dialogs are not the same, of course, but the problem occurs for both dialogs.

So what am I doing wrong? I'm using Theme.Light on API level < 11 and Theme.Holo.Light on >= 11.

Edit 1: And this is the code I use for inflating:

Edit 2: And here's the inflated XML for the "choose date" view:

Edit 3: As I found out now, the inflated dialog content is rendered correctly on Android <= 2.3.3 when using mGlobalInflater = (LayoutInflater) getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE); and it is rendered correctly on Android >= 3.0 when using mInflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);. So the Context makes the difference. Why?

Edit 4:

The dialog is created and inflated inside of onContextItemSelected() of Activity:

Is this correct? Or do I have to replace MainActivity.this by a variable mContext (for example) that the Activity's context was assigned to in onCreate()?

0 投票する
2 に答える
13321 参照

android - ListViewでアクションモードを機能させる方法

アクションモードを使用してコンテキストメニューを取得しようとしています。アクションモードでは、リストビューでアイテムを長押しして選択できます。この参照に従ってMultiChoiceListenerを作成し、この参照に従ってアクションモードが機能するために必要なチェック済みの項目を設定するItemLongClickListenerを作成しました。

私の問題は、アイテムを長押ししたアニメーションが再生されていても、ActionMenuが膨らまないことです。

ListViewコード:

前もって感謝します!

0 投票する
1 に答える
625 参照

android - xmlを膨らませようとすると、ImageViewとtextViewがオーバーラップします

Overalp画像imageviewとtextviewを含むxmlがあります。TextviewはRightOfImageViewに配置されますが、xml imageViewを膨らませようとすると、textviewがオーバーラップします。

data.xml

アクティビティコード

check.xml

0 投票する
2 に答える
1562 参照

android - 地図を追加しようとしてエラーが発生しました: android.view.InflateException: Binary XML file line #9: Error inflating class com.google.android.maps.MapView

MapActivity を拡張する次のクラスを作成します。エラーはこのクラスの行にあります

View view = infalInflater.inflate(R.layout.car_map_view, null);

}

これはxmlファイルです:

そして、これがアダプターです

public class ShowCarExpandListAdapter extends BaseExpandableListAdapter {

}

主な活動は次のとおりです。

}

そしてそれが与えるエラー:

それが役立つことを願っています

0 投票する
2 に答える
282 参照

android - インフレから作成された間違ったレイアウト階層

実際に別のコンポーネントをラップするカスタム コンポーネントがあります。そのレイアウトは次のとおりです。

コンポーネントのコードで、私はそれを膨らませようとしています:

しかし、私は を取得してClassCastExceptionおり、最初の子はRelativeLayout!と表示されています。この相対レイアウトのすべての子をトレースしましたが、実際には構成アクティビティにカスタム コンポーネントが含まれるウィジェットのレイアウトです! 簡単なテスト アクティビティでコンポーネントをテストしたところ、すべてが機能しました。

では、なぜそれが起こっているのでしょうか。どうすればよいのでしょうか。ありがとう。