It's 0 because in both onCreate and onStart, the view hasn't actually been drawn yet. You can get around this by listening for when the view is actually drawn:

final TextView tv =(TextView)findViewById(R.id.venueLabel);
final ViewTreeObserver observer = tv.getViewTreeObserver();
observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener()
{
  @Override
  publicvoid onGlobalLayout()
{ tv.getHeight(); observer.removeGlobalOnLayoutListener(this);
  
}
});

The call to remove the listener is there to prevent repeated invocations of your custom handler on layout changes... if you want to get those, you can omit it.

http://stackoverflow.com/questions/8170915/getheight-returns-0-for-all-android-ui-objects

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. Android之系统自带的文字外观设置及实际
  2. Android 办公自动化(Office Automation)
  3. android跨进程通信(IPC):使用AIDL
  4. android的第一天学习
  5. Android播放视频的方式
  6. Android test project 编译步骤
  7. android客户端程序访问服务器端webservic
  8. 【Android】EditText实现搜索功能,把键盘
  9. 离线下载安装android sdk
  10. Android 双屏异显