Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 设置带有自定义材质主题的支持操作栏_Java_Android_Xml - Fatal编程技术网

Java 设置带有自定义材质主题的支持操作栏

Java 设置带有自定义材质主题的支持操作栏,java,android,xml,Java,Android,Xml,我正在尝试向自定义材质Android主题添加自定义动作栏 问题是,要使主题工作,我的MainActivity需要扩展Activity,而setSupportActionBar方法需要MainActivity扩展AppActivity 以下是我的主要活动: import android.app.Activity; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.wid

我正在尝试向自定义材质Android主题添加自定义动作栏

问题是,要使主题工作,我的MainActivity需要扩展Activity,而setSupportActionBar方法需要MainActivity扩展AppActivity

以下是我的主要活动:

import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Toolbar;
import android.view.Menu;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar myToolbar = (Toolbar) findViewById(R.id.myToolbar);
    setSupportActionBar(myToolbar);
}
My ActivityMain.xml

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="start"
    android:orientation="vertical">
    <android.support.v7.widget.Toolbar
        android:id="@+id/myToolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/ap_main_dark"
        android:elevation="4dp"
        android:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
</LinearLayout>

还有我的风格

<style name="AjudarOPeixe" parent="android:Theme.Material.Light.NoActionBar" >
    <item name="android:colorAccent">@color/ap_red</item>
    <item name="android:navigationBarColor">@color/ap_main</item>
    <item name="android:statusBarColor">@color/ap_main_dark</item>
    <item name="android:colorPrimary">@android:color/background_light</item>
    <item name="android:textColorPrimary">@android:color/background_dark</item>
</style>

@颜色/淡红色
@彩色/ap_主屏幕
@颜色/ap\u主色\u深色
@android:颜色/背景光
@安卓:颜色/背景颜色为深色

您需要使用AppCompat主题:


谢谢!我担心使用AppCompat所有的材料设计都会消失,但显然资源仍然存在。
<style name="AjudarOPeixe" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorAccent">@color/ap_red</item>
    <item name="navigationBarColor">@color/ap_main</item>
    <item name="statusBarColor">@color/ap_main_dark</item>
    <item name="colorPrimary">@android:color/background_light</item>
    <item name="textColorPrimary">@android:color/background_dark</item>
</style>
public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toolbar myToolbar = (Toolbar) findViewById(R.id.myToolbar);
        setSupportActionBar(myToolbar);
    }
}