2014-03-14 74 views
1

這很奇怪。我最近加入了Android編程。我做了全新的安裝,但是當我創建一個新項目時,在頁面的最後有一個名爲Fragment Layout Name的新選項,您可以在其中指定您的活動名稱。我以前沒有遇到過這種情況,但是當我打開我的主要活動時,這就是我所得到的。根據Android的規定,其中一半也會有錯誤。無論如何,我可以回去避免這種情況嗎?現在創建一個基本的Android項目添加一個片段佈局?

package com.example.quizactivity; 

import android.support.v7.app.ActionBarActivity; 
import android.support.v7.app.ActionBar; 
import android.support.v4.app.Fragment; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.view.ViewGroup; 
import android.os.Build; 

public class MainActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

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

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 

     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     // Handle action bar item clicks here. The action bar will 
     // automatically handle clicks on the Home/Up button, so long 
     // as you specify a parent activity in AndroidManifest.xml. 
     int id = item.getItemId(); 
     if (id == R.id.action_settings) { 
      return true; 
     } 
     return super.onOptionsItemSelected(item); 
    } 

    /** 
    * 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; 
     } 
    } 

} 
+0

我相信這是一個API版本的東西。我即將在這裏嘗試建議https://stackoverflow.com/questions/22369992/android-adt-bundle-automatically-extending-actionbaractivity-and-adding-fragment# – burntsugar

+0

將看看這個。這件事一直讓我瘋狂,我甚至都沒有對Fragments學到太多東西。謝謝。 – user254886

+0

是的,它確實是一團糟。我希望他們以這種方式創建初始代碼:http://stackoverflow.com/questions/24840509/why-does-the-new-adt-create-a-static-inner-class-fragment-by-default-simple -fr – EpicPandaForce

回答

0

如下操作,這對我的作品..

Step-1: 

右擊你的項目 - >屬性 - > Android的 - >在庫面板中,刪除 appcompat_v7庫,應用和Ok

Step-2: 

在項目轉到RES - >值 - > style.xml

在線路<style name="AppBaseTheme" parent="Theme.AppCompat.Light">變化父從Theme.AppCompat.Lightandroid:Theme.Light

Step-3: 

在項目轉到RES值 - >值-V11 - > style.xml

在線路<style name="AppBaseTheme" parent="Theme.AppCompat.Light">變化父從Theme.AppCompat.Light值到android:Theme.Holo.Light

Step-4: 

在項目轉到RES - >值-V14 - > main.xml中刪除 - > style.xml

在線路<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">變化父從Theme.AppCompat.Light.DarkActionBarandroid:Theme.Holo.Light.DarkActionBar

Step-5: 

在項目轉到菜單值這些線路在菜單標籤:

xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
tools:context="com.example.test.MainActivity" 

,並在項目標籤改變app:showAsAction="never"此行android:showAsAction="never"

項目,轉到資源 - >佈局 - >刪除fragment.xml之

Step-6: 

在MainActivity 延伸活動沒有ActionBarActivity最後你MainActivity.java後刪除多餘的代碼,如下所示:

package com.example.test; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.Menu; 

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

} 

享受:)

0

在創建新項目時選擇最小SDK版本作爲上限或上限。然後你會擺脫應用程序的緊湊。 我選擇了Miminum SDK 4。0並擺脫它。

相關問題