FrameLayout이나 Linear나 View에서 getWidth()를 했을때 0이 리턴될 때 해결법
이유는 컴포넌트(레이아웃)이 UI에 붙지 않았는데 콜해서..
그래서 컴포넌트의 post를 이용해서 layout이 다 붙으면 그 때 작업을 수행하게 하면 된다.
고려할 건 getMeasuredWidth() 매서드를 이용해야 한다는것!
frameGraph = (FrameLayout)findViewById(R.id.frameGraph); frameGraph.post(new Runnable() { @Override public void run() { Log.d(" "+frameGraph.getMeasuredWidth()); } });
'소프트웨어 > Android/Java/Ndk' 카테고리의 다른 글
JavaEffective] 변경 가능 데이터의 동기화(Lock, Synchronized, Volatile) (0) | 2015.08.21 |
---|---|
JavaEffective] singleton instance 훔치기 (0) | 2015.06.11 |
JavaEffective] Build Pattern (0) | 2015.06.11 |
Android] Java Generic을 이용한 Custom Log (0) | 2015.05.16 |
android] material design guide (0) | 2014.11.03 |
Android] View 컴포넌트끼리의 Touch,Click Event 우선순위 문제 (0) | 2014.10.26 |
android] 앱에서 다른 앱 부르기 (0) | 2014.08.20 |