2010-12-31 3 views
28

나는 상당히 복잡한 Android 앱을 가지고 있습니다. '레이아웃'폴더의 콘텐츠가 점점 커지고 있습니다. 개별 레이아웃 xml 파일을 하위 폴더로 구성하려고했습니다. 레이아웃/버튼 /, 레이아웃/액티비티/레이아웃/뷰/등. R. 클래스로 파싱되지 않은 폴더의 내용은 작동하지 않는 것 같습니다.Android가 하위 폴더로 레이아웃 정리

이 방법이 있습니까?

감사합니다.

+1

가능한 복제 [안드로이드 레이아웃 폴더 하위 폴더를 포함 할 수 있습니다?] (http://stackoverflow.com/questions/4930398/can-the-android-layout -folder-contain-subfolders) –

답변

22

나는이 일을 할 수 없을 것이라고 생각합니다. 나는 단지 layout-large, layout-mdpi, layout-hdpi, layout-fr 등과 같은 특정 폴더 이름 만 지원한다고 생각한다.이 중 하나 이상을 layout-fr-hdpi-large처럼 수정할 수도있다.

이 페이지는 또 다른 옵션은 다른보기에 대한 접두어를 사용하는 것입니다 허용 수정

http://developer.android.com/guide/topics/resources/providing-resources.html

+2

그는 하위 폴더에 대해 이야기하고 있습니다. 'layout-hdpi/buttons/mybutton.xml'이 아니라 자원 폴더 그 자체입니다. – KingCrunch

+3

그래도 지원되지 않습니다. 네가 할 수 있으면 좋겠어. 사용자 정의 UI를 사용하면 하나의 폴더에 많은 레이아웃과 드로어 블 리소스가 제공됩니다. SDK의 향후 릴리스에이 기능을 추가하기를 희망합니다.> – kcoppock

+4

기술적으로 정확한 답변으로 표시되었지만 현재로서는 불가능합니다. 나는 다른 견해를 다른 프로젝트로 포장하는 것과 같은 대안을 모색 중입니다. – longhairedsi

17

을 모두 보여줍니다. 다른 폴더를 가지고있는 것만 큼 좋지는 않지만 순서를 소개 할 수 있습니다.

9

이제 Android Studio 및 Gradle에서 프로젝트에 여러 리소스 폴더를 가질 수 있습니다. 레이아웃 파일뿐만 아니라 모든 종류의 자원을 구성 할 수 있습니다.

정확히 하위 폴더는 아니지만 응용 프로그램의 일부를 분리 할 수 ​​있습니다.

구성은 다음과 같이이다 :

sourceSets { 
    main { 
     res.srcDirs = ['src/main/res', 'src/main/res2'] 
    } 
} 

확인 documentation.

+1

파일 이름이 충돌합니다. – Gohan

+0

안녕하세요, 당신의 솔루션을 tryied했지만 빌드를 실행할 때 말한다 : 원본 '주'설정 'res'속성을 찾을 수 없습니다. – Apperside

+0

당신은 안드로이드 {...} 블록을 제외하고 sourceSets를 추가하려고 했습니까? –

관련 문제