android oncreate获取宽高度

 1         gridView = (GridView) getView().findViewById(R.id.gridView_musicbook);
 2
 3         gridView.getViewTreeObserver().addOnGlobalLayoutListener(
 4                 new OnGlobalLayoutListener() {
 5                     @Override
 6                     public void onGlobalLayout() {
 7                         // TODO Auto-generated method stub
 8                         mgridWidth = gridView.getWidth();//获取宽度//获取高度gridView.getHeight()
 9 // getViewTreeObserver().removeGlobalOnLayoutListener(this); 10 int itemWidth = mgridWidth / (songFiles.IMAGE_HEIGHT); 11 if (itemWidth > 0) 12  gridView.setNumColumns(itemWidth); 13  } 14 });

横竖屏切换时会重新跑oncreate事件,所以屏幕切换时会重新计算高度

时间: 2024-10-06 00:07:32

android oncreate获取宽高度的相关文章

Android如何获取系统高度、标题栏和状态栏高度

在android应用中,有时需要计算个View的位置,导致需要计算状态栏高度,标题栏高度等信息.为以后方便,在此做个简单记录. 晒代码前先了解一下android屏幕区域的划分,如下图(该图引用自此文http://www.iteye.com/topic/828830 ) 1. 屏幕区域的获取 [java] view plaincopy activity.getWindowManager().getDefaultDisplay(); 2.应用区域的获取 [java] view plaincopy R

获取状态栏高度

Android中获取状态栏高度的两种方法: public static int getStatusHeight(Context context) { int statusHeight = 0; try { Class<?> clazz = Class.forName("com.android.internal.R$dimen"); Object object = clazz.newInstance(); int resourceId = Integer.parseInt(c

Android中获取屏幕长宽的方法

package com.kale.screen; import android.annotation.SuppressLint; import android.app.Activity; import android.graphics.Point; import android.os.Bundle; import android.util.Log; import android.view.Display; public class MainActivity extends Activity {

Android 获得屏幕的宽高度

在View构造函数中获得屏幕的宽高 public class GameView extends View { public GameView(Context context) { Display d = ((Activity) context).getWindowManager().getDefaultDisplay(); Log.v(TAG,"W + H = "+d.getWidth()+" + "+d.getHeight()); } } ============

Android获取actionbar高度和StatusBar高度的方法

ActionBar: getActionBar().getHeight(); StatusBar: /** * 获取状态栏高度 * * @return */ public static int getStatusBarHeight(Context context) { Class<?> c = null; Object obj = null; java.lang.reflect.Field field = null; int x = 0; int statusBarHeight = 0; tr

Android中获取图片的宽和高

在Android中,我们想获取图片的宽和高应该怎么办?一.正常加载图片的方法下获取宽和高 举一个简单的例子:创建一个图片的副本 //加载原图 Bitmap bmSrc = BitmapFactory.decodeResource(getResources(), R.drawable.photo3); //创建副本 //1.创建与原图一模一样大小的bitmap对象,该对象中目前是没有内容的,可以比喻为创建了和原图一样大小 //的白纸 Bitmap bmCopy = Bitmap.createBit

【Android】获取控件的宽和高

有时候我们须要在Activity的时候获取控件的宽和高来做一些操作,以下介绍三种获取宽和高的方式: 1. onWindowFocusChanged @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (hasFocus) { int width = image.getMeasuredWidth(); int height = image.ge

安卓获取输入法高度与ViewTreeObserver讲解

目录 安卓获取输入法高度 前言 清单 开始 ViewTreeObserver讲解 获取输入法高度原理 思路 实现 关于ViewTreeObserver 定义 继承 摘要 获取View高度的三种方法 源码 interface KeyboardHeightObserver class KeyboardHeightProvider 为了方便部分精力少的朋友, 本文开始就直接介绍安卓获取输入法高度的方法,然后再逐步讲解. 安卓获取输入法高度 前言 在某些场景下, 比如写一个聊天界面,包括输入框和发送以及

Android开发 获取当前activity的屏幕截图

此方法是通过view的方式获取当前activity的屏幕截图,并不是framebuffer的方式,所以有一定的局限性.但是这种方法相对简单,容易理解. 首先通过下面的函数获取Bitmap格式的屏幕截图: 1 public Bitmap myShot(Activity activity) { 2 // 获取windows中最顶层的view 3 View view = activity.getWindow().getDecorView(); 4 view.buildDrawingCache(); 5