使用片段活动创建的ADT空白活动..

Chr*_*gos 35 eclipse android adt android-fragments

我现在真的很困惑,因为每当我创建一个带有空白活动的新Android应用程序时,它总是带有fragment_main.xml ...我只是想创建一个没有片段的空白活动...

在第一张图片中,空白活动附带片段布局.

第一个图像空白活动

第二个图像显示了创建的fragment_main

第二个图像空白活动

现在我真的很困惑...这只发生在将ADT更新到最新版本之后我已经提到过这个帖子:https://stackoverflow.com/questions/22203862/adt-doesnt-create-default-hello-world-but -command-line-does#=

我只想制作一个没有片段视图的空白活动的Android应用程序...

Ben*_*ben 27

对于那些想要了解如何从项目中删除Fragments的说明:

1)复制res/layout/fragment_main.xml的所有内容.打开activity_main.xml,删除FrameLayout,然后粘贴复制的内容.

2)删除fragment_main.xml

3)在MainActivity.java中,删除整个PlaceHolderFragment类:

/**
 * A placeholder fragment containing a simple view.
 */
public static class PlaceholderFragment extends Fragment {

    public PlaceholderFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                    Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_main,
                    container, false);
        return rootView;
    }
}
Run Code Online (Sandbox Code Playgroud)

4)从onCreate()中删除以下行:

if (savedInstanceState == null) {
    getSupportFragmentManager().beginTransaction()
            .add(R.id.container, new PlaceholderFragment()).commit();
}
Run Code Online (Sandbox Code Playgroud)

此时,您应该全部设置为运行项目.


sar*_*ran 7

您可以通过编辑Android SDK文件夹中的模板文件来使用以前的模板.但是,请确保备份"BlankActivity"文件夹.

  • 转到/ templates/tools/templates/activities/BlankActivity

  • 找到template.xml文件并找到以下代码段

     <parameter
      id="fragmentLayoutName"
      name="Fragment Layout Name"
      type="string"
      constraints="layout|unique|nonempty"
      suggest="fragment_${classToResource(activityClass)}"
      default="fragment_main"
      help="The name of the layout to create for the activity's content fragment" />
    
    Run Code Online (Sandbox Code Playgroud)

constraints改为constraints="empty".

  • 找到recipie.xml.ftl并找到以下代码
    <instantiate from="res/layout/fragment_simple.xml.ftl" to="${escapeXmlAttribute(resOut)}/layout/${fragmentLayoutName}.xml" />
    并注释整行.

  • root/src/app_package中找到SampleActivity.java.ftl文件并删除这两行
    <#include "include_options_menu.java.ftl"> <#include "include_fragment.java.ftl">

  • root/res/layout中找到fragment_simple.xml.ftlactivity_fragment_container.xml.ftl文件.将fragment_simple.xml.ftl文件的内容复制到activity_fragment_container.xml.ftl文件.

现在,当您尝试创建新活动时,您将获得此屏幕 没有片段的新活动

您可以将" 片段布局名称"字段留空.

在空白活动的情况下,这对我来说很好.我不确定这是否是正确的方法,丢弃碎片和所有,但这对我有用.


Muz*_*ant 6

这是ADT版本22.6.0的新功能:http: //developer.android.com/tools/sdk/eclipse-adt.html

编辑:使用最新的ADT更新,有一个名为"空活动"的新模板没有片段.它是一个普通的类扩展Activity(即使没有默认菜单).

请注意,还有一个"空白活动",它扩展ActionBarActivity并具有碎片

  • 你可能不想'还原它'.这是开发Android应用程序的正确和最模块化的方法.即使您只有一个活动,也可以使用片段,其中一个屏幕永远不会更改. (4认同)

小智 5

感谢报告此内容的人,https://code.google.com/p/android/issues/detail?id = 67513

这是我第一次看到android-review.googlesource.com.四处搜索我没有看到下载补丁集的方法,我不确定如何"挑选"tools_r22.6,如果有一个线程解释它,链接将不胜感激.

这是我如何去做的.

在您的计算机上,导航到SDK文件夹,然后导航到\ tools\templates\activities

复制BlankActivities文件夹并将其粘贴到同一目录中.

将BlankActivities_copy重命名为EmptyActivities

转到https://android-review.googlesource.com/#/c/88890/4

在"文件"部分下有一个链接列表.每个链接都会将您定向到需要添加到您创建的新EmptyActivities文件夹的xml.

将xml从右窗格复制到左窗格顶部的路径\文件(链接也是路径).如果文件已存在,则删除内容并替换.如果该文件不存在,请创建该文件并将xml复制到该文件中.

对每个链接重复上述步骤.

关闭并重新打开Eclipse.如果您在编辑器中打开了任何文件,Eclipse将崩溃.

感谢Josiah Gaskin在google上进行了令人难以置信的2天转变!

没有培训文献参考BlankActivity中的片段.我确信这个修复程序在尝试学习新IDE时试图弄清楚如何浏览片段,从而为我节省了无数个小时.再次感谢.