Kirjoittaja Aihe: [Ratkaistu]Kuinka laitetaan Android-ohjelmaan teemaksi Theme.Holo.Light ?  (Luettu 2418 kertaa)

kamara

  • Käyttäjä
  • Viestejä: 3032
    • Profiili
Yritän saada options-menun näkyviin, vaikka mielestäni teen kaiken oikein tutoriaalin mukaan, niin ei kyseistä valikkoa tule oikein näkyviin.

Oletan sen johtuvan siitä, etten saa Theme.Holo.Light-teemaa asetetuksi.

Menu-xml-tiedostoni...
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/new_game"
          android:title="@string/new_game"
          android:showAsAction="always"/>
    <item android:id="@+id/help"
          android:title="@string/help" />

Manifestini...
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="fi.example.www.optionsmenuyritelma">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        >
        <activity android:name=".MainActivity"
            android:theme="@style/AppTheme"

            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Tyylitiedostoni...
Koodia: [Valitse]
<resources>
<style name="AppTheme" parent="@android:style/Theme.Holo.Light" />
</resources>

Pyydettäessa voin laittaa koko ohjelma-tiedostoni liitteeksi.

Edit - Käyttämäni tutoriaali... https://www.youtube.com/watch?v=IyPemIJDerw

Kääntyy, mutta kaatuu käynnistettynä...
« Viimeksi muokattu: 21.08.17 - klo:09.41 kirjoittanut kamara »

kamara

  • Käyttäjä
  • Viestejä: 3032
    • Profiili
Korjataanpas vähän, kun tein uudestaan puhtaan ohjelman...

main_menu.xml-tiedostoni
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:id="@+id/settings_id"
     android:title="Settings"
     android:showAsAction="always"
     />
 <item android:id="@+id/about_us_id"
     android:title="About Us"
     android:showAsAction="always"
     />

 <item android:id="@+id/contact_us_id"
     android:title="Contact Us"
     android:showAsAction="never"
     />


</menu>

Manifestini...
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="fi.example.www.optionsmenuyritelma2">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Tyylitiedostnoni...
Koodia: [Valitse]
<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>

Toimii, mutta ei tule action-barin riville valintoja, jotka ovat merkitty menussa always:lla, vaikka niin haluaisin.

kamara

  • Käyttäjä
  • Viestejä: 3032
    • Profiili
Täältä linkistä saattaa löytyä apuja, mutten ole vielä saanut sitä toimimaan.

https://stackoverflow.com/questions/21762203/change-the-project-theme-in-android-studio

kamara

  • Käyttäjä
  • Viestejä: 3032
    • Profiili
Säkällä sain onnistumaan. Vielä pitää vähän tutkia sötöksiäni, jotta opin toistamaan kyseisen ominaisuuden.

Tässä siis pähkinänkuoressa viritelmäni...

Main_menu.xml
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
 <item android:id="@+id/settings_id"
     android:title="Settings"
     app:showAsAction="always"
     />
 <item android:id="@+id/about_us_id"
     android:title="About Us"
     app:showAsAction="always"
     />

 <item android:id="@+id/contact_us_id"
     android:title="Contact Us"
     app:showAsAction="never"
     />
</menu>

manifestini...
Koodia: [Valitse]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="fi.example.www.optionsmenuyritelma2">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

tyylitiedostoni:
Koodia: [Valitse]
<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar" >
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>

koodi...
Koodia: [Valitse]
package fi.example.www.optionsmenuyritelma2;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;

public class MainActivity extends AppCompatActivity {

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

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main_menu,menu);
        return true;
        //return super.onCreateOptionsMenu(menu);
    }
}

Siinä on todennäköisesti kaikki tarvittava.