문제

I started a new Android Application based on master/detail flow template using ADT Eclipse. This template creates two activities, a master fragment and a detail fragment in order to fit small and larger screens.

I noticed the activity_item_list.xml file has the tools:layout attribute:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/item_list"
    android:name="com.example.fragmenttwopanel.ItemListFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginLeft="16dp"
    android:layout_marginRight="16dp"
    tools:context=".ItemListActivity"
    tools:layout="@android:layout/list_content" />

I tried to delete the attribute and the app runs in the same way but in the graphical layout tab of ADT, a message ask me for:

pick preview layout from the "Fragment Layout" context menu

What is its purpose? Is it just for preview in graphical layout?

도움이 되었습니까?

해결책

This is a namespace used by the IDE tools. This is not needed to run the application on a device (or emulator). On the other hand, if you leave them, Android will ignore them when the application is running on a device.

This is used by e.g. lint and graphical layout tab.

You can check how it's used by lint here: http://developer.android.com/tools/debugging/improving-w-lint.html in section Configuring lint checking in XML.

다른 팁

Yes, it's just information for the Graphical Layout editor how the fragment should be displayed in the editor.

Generally the tools attributes (with tools namespace prefix declared with xmlns:tools="http://schemas.android.com/tools") are used by the development tools and are not compiled in the application itself.

right click on the grey area, " fragment layout->choose layout" and select your layout , DONE!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top