問題タブ [android-include]

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 に答える
1599 参照

android - 含まれているレイアウトで TextView を変更する

プログラムの実行中に TextView のテキストを別のアクティビティから送信されたデータに変更しようとしています。

TextViewid="@+id/userName"は私の nav_header_main レイアウト ファイルにあります

main.xmlに次のよう に含まれています。

OnCreateメソッドでテキストを設定してみた

それでも、実行中に「Null Pointer Error」が発生します。物事を正しく機能させるために何かを見逃しましたか?

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

android - アンドロイド:RippleEffect と StateListAnimator を使用

別のレイアウトを含むレイアウトがあります:

含まれているレイアウトに RippleEffect と StateListAnimator を追加する必要があります。

例:

RippleEffect と StateListAnimator の両方が 100% 機能します。含まれているレイアウトを変更できません。したがって、インクルード タグまたは親レイアウト自体のいずれかでエフェクトを実行する必要がある理由です。

私は両方の手法を試しましたが、いずれも成功しませんでした。

アップデート

可能であれば、これをプログラムで停止する必要があります。

更新 2

次に、ビューがアニメーション化されたら、どのようにビューを高さのままにしますか?

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

android - 使用するandroid.support.v7.widget.GridLayout で正しく表示されない

内に s<include>を含めるために使用しようとしています。問題は、要素にすべての属性を明示的に指定しないと、正しく表示されないことです。つまり、すべての要素のすべての属性を再宣言する必要があるため、インクルードは無意味です。ImageButtonandroid.support.v7.widget.GridLayout<include><include>

dialpad_button.xml

dialpad_view.xml

すべての属性を s で直接宣言すると<include>、XML では次のようになります。

下の比較画像でわかるように、ボタンは適切にスケーリングされますが、画像はどこにも表示されません。

<include>s をに変更するとImageButton、期待どおりに動作します。

異なる XML レイアウトの比較

これに対する回避策はありますか?

srcダイヤルパッドに 12 個のほぼ同一のボタンを配置する予定なので、「テンプレート」を含め、各ボタンに必要な属性 (つまりと)のみを変更して、XML をクリーンアップしたいと考えていますid

編集

ある回答で提案されているように、スタイルを使用しようとしてもうまくいきませんでした。スタイルを適用して表示されるビューはありません。さらに奇妙なことに、 のビューの 1 つにスタイルを適用したGridLayoutだけでも、最後のビューしか表示されません (ここでは、読みやすくするためにサンプル コードを 2 つのビューに短縮しましたが、実際には 12 あります)。

これが私が使用してみたスタイルです:

0 投票する
5 に答える
4779 参照

android - 「含まれる」レイアウトのマージンをプログラムで変更する方法

私は LinearLayout を持っており、その中に別のレイアウトが含まれています。このようなもの

今私がやりたいことは、含まれているレイアウト(new_layout)の「marginBottom」をプログラムで変更することです。どうやってやるの?

さまざまな LayoutParams を呼び出してマージンを変更しようとしましたが、それが正しいアプローチかどうかはわかりません。どんな助けでも大歓迎です。

ありがとう

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

java - Android ViewPager が表示されない

私が開発しているより大きなアプリのためにいくつかのことを試すために小さなアプリを作ろうとしています。4つの画像を表示するビューページャーを追加したいのですが、このビューページャーを単独で開発して動作しましたが、タグを使用して他のアプリ(ボタンが2つだけ)に追加しようとすると、何も表示されず、ここで本当に立ち往生しています。この方法で Viewpager を追加することは可能ですか? 正直なところ、私は Java の経験があまりなく、通常は C とアセンブラーしかプログラミングしていません。

これは、ボタンとインクルードを含む xml ファイルです。

ここで、ビューページャーの元のレイアウトにリンクされたアクティビティ内にビューページャーを保持したため、ボタン アクティビティを保持する MainActivity

そして最後に、mainpager のメイン アクティビティのコードで、これは別の Java クラスに保存された CustomPagerAdapter を使用します。前に言ったように、このビューページャーは単独で動作しますが、ここで /include タグを付けて実装しようとすると、何も表示されません。

public class MainActivity extends Activity {

長すぎて申し訳ありませんが、少しイライラしています。たくさんのことを試しましたが、まだ機能していません。ボタンが機能して ViewPager が機能しないか、ViewPager は機能するがボタンが機能しません。

私は本当にあなたの助けに感謝します:)

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

java - フラグメント、基本クラスの拡張、およびインクルードの違いは何ですか?

私はアンドロイドが初めてで、やり取りできる再利用可能なUIピースを作成する方法を理解しようとしています。世の中にはいくつかのテクニックがあることは知っていますが、一方が他方よりも優れている場合や、それらすべてを同じ意味で使用できるかどうかはわかりません。誰かが違いを指摘できれば(または私が誤解していれば)、それはありがたいです。

  1. 新しいページを処理するフラグメントまたは fragmentActivity を作成します。このフラグメントは、必要に応じていつでも使用できますが、フラグメントのライフサイクルを処理するために特別な注意を払う必要があります。
  2. レイアウトとその他必要なものを含む基本クラスを拡張します。その後、他のクラスはこのベースを拡張し、ベース UI も表示して機能させることができます。
  3. を使用<include layout=...すると、UI の一部のみを再利用できます。これについては、そのレイアウトのロジックがどこに行くべきかわかりません。

私が求めているのは、これらのそれぞれの概要であり、悪影響を与えることなく、より快適な方を使用できるかどうかです.

Ps: これらは、すべてのページに配置できる再利用可能なナビゲーション バーを作成する場合や、異なるページすべてにヘルプ ボタンがある場合に使用します。

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

android - ツールバーは、Intent/AppCompatActivity のメニュー インフレートで致命的なエラーを発生します

私のアプリには、MainActivity で完全に機能するツールバーがあります。

しかし、このメニューを膨らませようとすると

このコードで

}

それは私にこれを与える

原因: java.lang.NullPointerException: null オブジェクト参照で仮想メソッド 'void android.support.v7.widget.Toolbar.inflateMenu(int)' を呼び出そうとしました

よくわからない致命的なエラー。また、onCreateOptionsMenu メソッドを上書きして、MainActivity のように MenuInflater を使用しようとしましたが、何も変わりません。メイン アクティビティで行ったように、ツールバーを xml に含めました。

<include layout="@layout/toolbar_layout" android:id="@+id/include" />