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

レイアウトは、アクティビティ、フラグメント、アプリウィジェットのUIなど、ユーザーインターフェイスの視覚的な構造を定義します。

6
誰かが属性を説明できますか?
Honeycomb Galleryのサンプルコード(ここ)を見ていて、自分のアプリにアクションアイテムを追加しようとしているときに、次のコードに遭遇しました。 <item android:id="@+id/camera" android:title="Camera" android:icon="?attr/menuIconCamera" android:showAsAction="ifRoom" /> ?attrループのための私を投げています。誰かがこれが何をしているのか説明できますか?これはドローアブルとどのように関連していますか?グーグルで良い情報が見つからないようです。また、アイコンだけでなく、アイコンに使用できる属性のリストまたはギャラリーはありますmenuIconCameraか? ありがとう 編集:もう少し調べてみると、attrs.xmlは次のようになっていることがわかりました: <resources> <declare-styleable name="AppTheme"> <attr name="listDragShadowBackground" format="reference" /> <attr name="menuIconCamera" format="reference" /> <attr name="menuIconToggle" format="reference" /> <attr name="menuIconShare" format="reference" /> </declare-styleable> 残念ながら、それは私にとってさらに混乱を招きます。これは何をしているのですか?

8
onMeasure()をオーバーライドする信頼できる方法は?
onMeasure()をオーバーライドする正しい方法は何ですか?私はさまざまなアプローチを見てきました。たとえば、Professional Android Developmentは、MeasureSpecを使用してディメンションを計算し、setMeasuredDimension()の呼び出しで終了します。例えば: @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec){ int parentWidth = MeasureSpec.getSize(widthMeasureSpec); int parentHeight = MeasureSpec.getSize(heightMeasureSpec); this.setMeasuredDimension(parentWidth/2, parentHeight); } 一方、この投稿によると、「正しい」方法は、MeasureSpecを使用し、setMeasuredDimensions()を呼び出し、続いてsetLayoutParams()を呼び出し、最後にsuper.onMeasure()を呼び出すことです。例えば: @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec){ int parentWidth = MeasureSpec.getSize(widthMeasureSpec); int parentHeight = MeasureSpec.getSize(heightMeasureSpec); this.setMeasuredDimension(parentWidth/2, parentHeight); this.setLayoutParams(new *ParentLayoutType*.LayoutParams(parentWidth/2,parentHeight)); super.onMeasure(widthMeasureSpec, heightMeasureSpec); } では、どちらが正しい方法ですか?どちらのアプローチも私にとって100%うまくいきませんでした。 私が本当に求めているのは、onMeasure()、レイアウト、子ビューの寸法などを説明するチュートリアルを知っている人はいると思いますか?

4
中心点を基準にしたAndroid画像スケールアニメーション
ImageViewがあり、それに単純なスケールアニメーションを実行します。非常に標準的なコード。 私のscale_up.xml: <set xmlns:android="http://schemas.android.com/apk/res/android"> <scale android:fromXScale="1" android:fromYScale="1" android:toXScale="1.2" android:toYScale="1.2" android:duration="175"/> </set> 私のアニメーションコード: Animation a = AnimationUtils.loadAnimation(this, R.anim.scale_up); ((ImageView) findViewById(R.id.circle_image)).startAnimation(a); 問題: 画像が拡大縮小される場合、画像は中央からではなく、左上隅から拡大縮小されます。つまり、画像の拡大縮小されたバージョンは、中心と同じポイントを持ちませんが、左上のポイントは同じです。これが私が何を意味するかを説明するリンクです。最初の画像はアニメーションのスケーリング方法であり、2番目の画像はアニメーションのスケーリング方法です。中心点を同じに保つ必要があります。画像、コンテナ、左または右に重力を設定してみましたが、常に同じスケールになります。メイン画面にRelativeLayoutを使用していて、ImageViewは別のRelativeLayoutにありますが、他のレイアウトを試しましたが、変更はありません。

9
Android Studio:新しく作成されたディレクトリがフォルダビューに表示されない
/ resディレクトリ内に新しいフォルダを作成しようとしています 新しいディレクトリを追加しました ファインダーに存在していても、/ resフォルダーにフォルダーが表示されない ケースとポイントフォルダをもう一度追加しようとすると、フォルダが存在することを通知するメッセージが表示されました。 これを修正するために私ができることを提案できれば、私はそれが大好きです! (はい、プログラムとコンピューターを再起動しました)

1
AndroidSDKのgetWidth / Height()とgetMeasuredWidth / Height()の違いは何ですか?
Androidのドキュメントは言うビュー、のための2つのサイズがあることが測定された寸法と図面寸法。測定された寸法は、測定パス(onMeasureメソッド)で計算された寸法ですが、図面の寸法は画面上の実際のサイズです。特に、ドキュメントには次のように書かれています。 これらの値は、測定された幅および高さと異なる場合がありますが、異なる場合はありません。 だから、私の質問は、図面の寸法が測定された寸法と異なるのはなぜですか?onMeasure(int、int)メソッドがレイアウト要件(パラメーターwidthMeasureSpecおよびheightMeasureSpecとして指定)を尊重する場合、SDKはビューの描画サイズを変える必要があるとどのように判断できますか? さらに、Androidソースコードのどこで、測定された幅/高さを使用して、描画の幅/高さを計算しますか?ビューのソースコードを調べようとしましたが、measuredWidth / Heightを使用して最終的な幅/高さを計算する方法がわかりません。パディングと関係があるのか​​もしれませんが、よくわかりません。

10
Spinnerにフローティングラベルを追加する方法
Androidデザインサポートライブラリを使用してTextInputLayoutフローティングラベルをEditTextコンポーネントの上に配置した後、フローティングラベルをコンポーネントに追加する方法Spinner(デザインライブラリを使用する必要はない)があるかどうか疑問に思いました。 これは、の上にTextView配置されたようなものを意味しますSpinner(明らかにのようなアニメーションはありませんTextInputLayout)が、テキストサイズ、フォント、および色をTextInputLayoutのフローティングラベルのそれに一致させる必要があります。 たとえば、次のようになります(Spinnersの上にあるラベルを参照)。 前に述べたように、私の主な目的はとSpinner同じようにの上にラベルを付けることです。つまり、TextInputLayoutテキストサイズ、フォント、色、ラベルとコンポーネント間の距離は同じになります。 上のラベルのテキストフィールドを浮動に関するGoogleのデザインのページ、コンポーネントに対するラベルの寸法を示す図がありますが、ラベルテキストの色や大きさの兆候はありません。 要約すると、私は次のように質問し ています。 -そうでない場合は、ので、私は置くことができることを何浮動ラベルテキストのサイズ、色、フォントがあり、TextView私の上のSpinner上の画像に示すレイアウト寸法で。 編集: テキストフィールドのGoogleデザインガイドラインから、フローティングラベルには次のようになります。 ヒントと入力フォント:Roboto Regular 16sp ラベルフォント:Roboto Regular 12sp タイルの高さ:72dp テキストの上下のパディング:16dp テキストフィールドの仕切りのパディング:8dp 上記の画像と同様に。 したがって、フローティングラベルフォントはRoboto Regular 12spです。したがって、使用できるカスタムsや特別なコンポーネントがわからないため、a TextViewを使用してSpinnerラベルを表示Viewできます。 ただし、試してみたところ、図に示す例ほどよく見えません。カスタムビューは、より良い、このためかもしれそれはよりよいを見ることができるように、しかし、上記の溶液は近い私が最初に何を望むかに何かを達成するためのひとつの方法です。

5
ボタンのアイコンに新しいアイテム数を追加-Android
私は開発者です。以下に示す設計を実装する必要があります。私はすでに機能的なアプリを持っていますが、これにアプローチする方法さえ疑問に思いますか?特に、タブの下に「新規」アイテムの数を表示する方法に興味があります。私が知っている方法は、赤い点で新しいアイコンを作成し、新しいものが利用可能になったときにそれらを表示することです。 しかし、それらの丸い円をタイトルの上に浮かせて、中に番号を表示する方法がわかりません。誰かが何を探すべきかについて提案がありますか?サンプル?行き方? 活動の分離に関する2番目の質問。このようなボタンを組み合わせて、アクティビティで膨らませるように制御する必要がありますか?そうしないと、タブ付きのアクティビティを作成する可能性がありますが、このようにスタイルを設定できるかどうかはわかりません。

3
android:Go Launcherのような初めてのチュートリアルをアプリに実装するにはどうすればよいですか?
Go Launcherには、初めてのチュートリアルがあります。これは、StockICSの初回実行と非常によく似ています。アプリの最初の起動時に同様のチュートリアルを表示する方法を学びたいです。この透過ビュー(画面オブジェクトと相互作用する)をAndroidアプリに実装するにはどうすればよいですか?

3
私の場合、プログラムで1つのレイアウトを他のレイアウトの上に表示するにはどうすればよいですか?
私のメインレイアウトmain.xmlには、2つのLinearLayoutが含まれています。 第一LinearLayoutのホストVideoViewとButton、 2番目はをLinearLayoutホストしEditText、これLinearLayoutにより可視性の値が「GONE」に設定されました(android:visibility="gone") 以下のように: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/first_ll" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <VideoView android:id="@+id/my_video" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="9" /> <Button android:id="@+id/my_btn" android:layout_width="30dip" android:layout_height="30dip" android:layout_gravity="right|bottom" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:id="@+id/second_ll" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="2dip" android:visibility="gone" > <EditText android:id="@+id/edit_text_field" android:layout_height="40dip" android:layout_width="fill_parent" android:layout_weight="5" android:layout_gravity="center_vertical" /> </LinearLayout> </LinearLayout> Button(id my_btn)を押すと、2番目の LinearLayoutwithEditTextフィールドが表示される機能を、次のJavaコードで正常に実装しました。 LinearLayout …

2
Android:プログラムでJavaコードからスピナーを埋める
プログラムでJavaコードからスピナーをどのように埋めますか? 私はこのようなレイアウトのスピナーを持っています: <Spinner android:id="@+id/consultation_deseases" android:layout_width="@dimen/bigSpinnerWidth" android:layout_height="@dimen/bigSpinnerHeight" android:prompt="@string/disease_prompt" /> Javaコードを使用して、アダプターを作成し、アイテムを追加する必要があります。

8
Glide-4.0.0プレースホルダー、エラー、GlideAppがなく、メソッドプレースホルダー、エラーが解決されない
Glide Androidライブラリを使用して画像をダウンロードし、に表示したいと思いますImageView。 以前のバージョンでは、次のものを使用しました。 Glide.with(mContext).load(imgUrl) .thumbnail(0.5f) .placeholder(R.drawable.PLACEHOLDER_IMAGE_NAME) .error(R.drawable.ERROR_IMAGE_NAME) .crossFade() .diskCacheStrategy(DiskCacheStrategy.ALL) .into(imageView); しかし、私はグライドのドキュメントを見ました: GlideApp.with()代わりに使用すると書かれていますGlide.with() 私の懸念は、プレースホルダーの欠落、エラー、GlideApp、およびその他のオプションです。 私は使っている compile 'com.github.bumptech.glide:glide:4.0.0' どこが間違っているのですか?ここを参照して。 どのようにGlideApp.with()使用されていますか? APIはと同じパッケージで生成され、デフォルトAppGlideModuleで名前が付けGlideAppられます。アプリケーションは、次のGlideApp.with()代わりにすべてのロードを開始することでAPIを使用できますGlide.with()。 GlideApp.with(fragment) .load(myUrl) .placeholder(placeholder) .fitCenter() .into(imageView);

5
FrameLayoutのAndroidセンタービューが機能しない
2つのコントロールがあるFrameLayoutがあります。-画像とその上にテキストを描画するカスタムビュー-テキスト付きのテキストビュー 両方をFrameLayoutの中央に配置したいのですが、どうにかできません。Texviewは適切に中央に配置されており、表示すると、カスタムビューは左側に残ります。 <FrameLayout android:id="@+id/CompassMap" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center"> <view class="com.MyView" android:id="@+id/myView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical|center_horizontal" android:visibility="gone"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical|center_horizontal" android:text="CENTERED" /> </FrameLayout> マティアスにとって、コンストラクターでは何もしません。単純です。 public class MyMapView extends View { private int xPos = 0; private int yPos = 0; private Bitmap trackMap; private Matrix backgroundMatrix; private Paint backgroundPaint; private Bitmap …

22
レイアウト内のすべてのビューを無効にするにはどうすればよいですか?
たとえば、私は持っています: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <Button android:id="@+id/backbutton" android:text="Back" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/my_layout" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:id="@+id/my_text_view" android:text="First Name" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <EditText android:id="@+id/my_edit_view" android:width="100px" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <View .../> <View .../> ... <View .../> </LinearLayout> </LinearLayout> LinearLayout内のすべての要素を無効にする(setEnable(false))方法はありmy_layoutますか?

15
LollipopのbackgroundTintはボタンには影響しません
アクティビティにボタンがあり、テーマのアクセントカラーを付けたいのですが。ロリポップ以前のように自分でドローアブルを作成する代わりに、当然、新しいbackgroundTint属性を使用したいと思います。 <Button android:id="@+id/btnAddCode" android:layout_width="match_parent" android:layout_height="wrap_content" android:backgroundTint="@color/accent" android:text="@string/addressInfo_edit_addCode" /> 残念ながら効果はなく、ボタンは灰色のままです。 さまざまな値を試しました backgroundTintMode変えてみましたが、何も変わりませんでした。 また、アクティビティでプログラムで試してみましたが、何も変わりませんでした。 addCodeView.findViewById(R.id.btnAddCode).setBackgroundTintList( getResources().getColorStateList(R.color.accent)); なぜ私の色合いが無視されるのですか? 編集:明確にするために、私は確かにロリポップデバイスでテストしています。他のウィジェット(EditTextなど)は正しく自動的に色付けされます。

3
アクションバーにドロップダウンアイテムを追加する方法
私のAndroidHoneycombアプリケーションでは、ナビゲーションスタイルとしてタブを使用しています。オーバーフローボタンの横に1つのアイテムを追加したいのですが、そのアイテムをドロップダウンリストにしたいので、ユーザーはそこでオプションを選択できますが、ナビゲーションとは関係ありません。私が使用しているので最も簡単な方法は何ですかmActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); カスタムビューを使用せずにそれを行うことは可能ですか?

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