2011-12-09 1 views
2

내 Android 프로젝트가 올바르게 컴파일되고 휴대 전화와 에뮬레이터 모두에서 정상적으로 실행되며 LinearLayouts, TextViews, Buttons, Images 및 사용자 정의보기 구성 요소가 포함 된 여러 XML 레이아웃 파일도 포함됩니다 , 그러나 모양에 올 때 단순히 그것을 찾아 낼 수 없다.AndroidManifest : 알 수없는 'shape'XML 요소를 무시합니다

Heres는 내 코드 :

<?xml version="1.0" encoding="utf-8"?> 
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 

    <solid android:color="#ffffff"/>  

    <stroke android:width="3dp" 
      android:color="#ff000000"/> 

    <padding android:left="1dp" 
      android:top="1dp" 
      android:right="1dp" 
      android:bottom="1dp"/> 

    <corners android:radius="30dp"/> 
</shape> 

내가 이클립스 그래픽 레이아웃에서 얻을 오류 :

com.android.layoutlib.bridge.MockView cannot be cast to android.view.ViewGroup 
Exception details are logged in Window > Show View > Error Log 
The following classes could not be found: 
- shape (Fix Build Path, Edit XML) 
- solid (Fix Build Path, Edit XML) 

내가 안드로이드 2.2 프로 요 구글 API를 목표로하고있다.

제안 사항?

+1

내 머리 꼭대기에서이 XML 파일을 res/drawable 디렉토리에 저장 했습니까? – dbryson

+0

아니요, res/layout. res/drawable이 이미지 용이라고 생각 했나요? xml 레이아웃에서 사각형을 그리려면 어떻게해야합니까? – Ring

답변

10

이 XML을 잘못된 위치에 넣으므로 오류가 발생했을 수 있습니다. 위의 XML은 res/drawable 디렉토리에 있어야합니다. 레이아웃에 사각형을 그려서는 안됩니다. 보기에 정사각형을 그려서 레이아웃에 추가하십시오. 또는 이미지를 사용하여 ImageView를 통해 뷰에 추가 할 수 있습니다. 레이아웃은 뷰의 집합입니다. 레이아웃 (ViewGroup)에 사각형을 실제로 그리려면 하나를 확장하고 onDraw() 메서드에서 그릴 수 있습니다. 그러나 그것은 아마도 필요한 것보다 더 복잡 할 것입니다. 레이아웃의 Android 문서를 살펴보세요. http://developer.android.com/guide/topics/ui/index.html

+0

귀하의 도움 덕분에 사각형/사각형 그리기 코드를 res/drawable의 xml 파일에 넣은 다음 이미지 뷰로 레이아웃에 추가했습니다. 고마워 친구. 나는 이제 한 가지 더 많은 문제를 겪었습니다.이 문제에 관심이 있다면 http://stackoverflow.com/questions/8440983/draw-square-behind-text – Ring