タグ

2016年6月18日のブックマーク (6件)

  • [Android] ImageView画像をScreenのレイアウトにフィットさせるには

    Android端末の画面サイズは様々で画像のサイズをスクリーン画面にフィットさせるには ImageView.ScaleType を上手に使わないといけません。 ImageView.ScaleType 設定のパラメータは8つあります Google Developer:Reference ImageView.ScaleType CENTER Viewの中央に表示 拡大/縮小 無し android:scaleType=”center” 小さい画像  大きい画像 CENTER_CROP Viewの中央に表示 View内で画像の縦横比を維持して余分な部分はCrop(切り取り) android:scaleType=”centerCrop” CENTER_INSIDE Viewの中央に表示 View内で画像の縦横比を維持し画像すべてをView内に配置 android:scaleType=”centerI

    [Android] ImageView画像をScreenのレイアウトにフィットさせるには
    hidehara
    hidehara 2016/06/18
    ScaleTypeをコードで指定するときには、他の要素との適用順番によって正常に機能しないようなのは気のせいかな?
  • [Android]ImageViewの表示サイズの決まり方

    ImageViewのビュー自体のサイズと、中身(Drawable)の表示のされ方はいろいろな要素に影響されて決まる。 ちょっとわかりにくいのでざっと整理してみたいと思う。 (この記事を読むには、Androidのレイアウト計算についてなどで、レイアウトの決まり方を知っておく必要あり) サイズに影響を与える要素は以下の10個がある。<ol> 親ViewGroupからのmeasureSpec DrawableのIntrinsicWidth/Height(Bitmapなどの大きさ) minWidth/Height maxWidth/Height BackgroundDrawableのIntrinsicWidth/Height adjustViewBounds padding matrix scaleType cropToPadding </ol> このうち、ビューのサイズに影響を与えるのは1~7の

    hidehara
    hidehara 2016/06/18
    サイズ1つも、思うように決めれないのはつらかったなぁ。影響を与える10の要素。
  • Android で View.getWidth() が 0 になる件

    hidehara
    hidehara 2016/06/18
    有名どこをしらずにハマったわ。
  • Activity のライフサイクル再確認 - Qiita

    Android 5.0がリリースされアプリケーション開発を行う際に、改めて Android アプリの基である Activity について再確認してみようと思いライフサイクルを調査してみました。 標準的なライフサイクル Android Developers では Activity Lifecycle は以下のように説明されています。 この図では基的な Activity のライフサイクルを示し、ライフサイクルが変化するタイミングで呼び出される Activity のメソッドを示しています。 ただ最新の Android 5.0 (API Level:21) で示されているメソッドを見ていくと、図の中で省略されているメソッドがいくつかあります。 Activity の launchMode など状態遷移を変化させる属性を指定されている場合から、実際に動作確認しながらライフサイクルの内容を整理・確認

    Activity のライフサイクル再確認 - Qiita
    hidehara
    hidehara 2016/06/18
    Activity3つぐらい使い出したら、理解しないわけにはいかないのかも。
  • Viewについて - The blog :: Memo & Journal

    今回は、当に自分の為の覚え書きというもの・Androidの基的なところです。Viewに関してです。ここの翻訳・抜粋のような感じになります。 ViewのPosition ViewはTree構造になってます。一番上にRootとなるViewが存在し、そのViewの中に子Viewがあり、その子Viewにもまた子Viewが存在するというような感じです。ViewのPositionはView#getLeft()やView#getTop()などのmethodeでX軸方向、Y軸方向の位置を取得することが出来ますが、それは直接の親のViewからの相対位置になります。 ViewのSize ViewのSizeには2種類あります。 measured width/height width/height measured width/heightは、Viewが親のViewの中でどれ位、大きくなりたいのかということを

    Viewについて - The blog :: Memo & Journal
    hidehara
    hidehara 2016/06/18
    Android の View , レイアウト決定プロセスの説明
  • Viewの大きさを確実に取得する方法 | Android-Note

    Viewの大きさの取得 ビューの大きさを計ろうとしてonCreateメソッド内で次のようなコードを書くと幅や高さが0という結果が返ってきます。 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = findViewById(R.id.button); Log.d("MainActivity : ", "ボタン幅 = " + button.getWidth()); Log.d("MainActivity : ", "ボタン高さ = " + button.getHeight()); } onStratやonResumeメソッド内でこれと同じ方法で取得しようとしても同じ

    hidehara
    hidehara 2016/06/18
    onGlobalLayoutListenerを実装すれば、レイアウトが決まった段階でコールバックされるのか。そんなに急がないなら onWindowFocusChanged で実装したほうがわかりやすいかな?