2012-06-01 2 views
22

을 점선 XML에서 쉐이프로 정의 점선, 다음과 같습니다안드로이드 줄 당김 잠재적 인 ICS 버그

<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="line"> 

    <size 
     android:height="2dp" 
     android:width="700dp" /> 

    <stroke 
     android:width="1dp" 
     android:color="@android:color/black" 
     android:dashWidth="1dp" 
     android:dashGap="2dp" /> 

</shape> 

이 여러 진저 브레드 폰에 좋은 점선을 그릴 것가. 그러나 Galaxy Nexus에서는 대시가 무시 된 것처럼 보이고 모양은 인접한 선으로 그려집니다. 더욱 흥미로운 점은 ICS를 실행하는 에뮬레이터가 대시로 올바르게 렌더링된다는 것입니다. 물리적 인 장치가 엉망입니다.

나는 분명한 뭔가를 놓치고 있습니까? 아니면 이건 정말 안드로이드 4.0 버그인가요? 이 선은 여러 곳에서 사용됩니다.

<ImageView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="@dimen/observation_observe_side_margin" 
    android:layout_marginRight="@dimen/observation_observe_side_margin" 
    android:layout_marginTop="16dp" 
    android:contentDescription="@string/dotted_line_description" 
    android:src="@drawable/dotted_line" /> 
+0

Galaxy Nexus에서 내 앱에 동일한 문제가 발생했습니다. 내 다른 장치 2.x 장치에서는 점선으로 표시됩니다. –

+0

duplicate of http://stackoverflow.com/a/26296229/185022 –

+0

중복 가능성 [실제 Android 기기에서 점선이 점선으로 표시되지 않음] (http://stackoverflow.com/questions/18931679/dotted 실제 - 안드로이드 장치에서 실행 중일 때 실제로 점선으로 표시되지 않음) –

답변

21

이이 문제는 점선이 표시됩니다 하드웨어 가속을 끄면 여기 http://code.google.com/p/android/issues/detail?id=29944 기록됩니다 예를 들면 다음과 같습니다의 이미지 뷰입니다.

view.setLayerType(View.LAYER_TYPE_SOFTWARE, null) 

이 나를 위해 일한 :

+2

불행히도 이것은 약 500 % 정도 성능이 저하됩니다. 이 문제를 방지하기위한 해결 방법은 무엇입니까? –

43

http://code.google.com/p/android/issues/detail?id=29944에서 로그인 문제는보기에 다음을 적용하는 의견이있다.

+27

뷰를 프로그래밍 방식으로 편집하지 않으려면 XML 정의에 'android : layerType = "software"속성을 추가 할 수 있습니다. – Arkaaito

+0

API 11+ http://developer.android.com/reference/android/view/View.html#setLayerType – Dori

+0

질문의 예에서 그렇습니다. 'android : layerType = "software"'를'ImageView' 또는'shape'에 설정하겠습니까? –