我希望每个人都做得很好。这是我在这个有用网站上的第一个问题。我正在尝试使用Android Studio(版本2.2.2)在Android上创建我的第一个应用程序。我似乎无法更改标题或显示我的选项菜单图标。以下图像是它的样子。
以下是我的strings.xml(有些未使用):
<resources>
<string name="app_name">Weekly Duties</string>
<string name="weekly">Weekly things to do</string>
<string name="vognormal">Vault of Glass (Normal)</string>
<string name="stop">Stop Clicking me</string>
<string name="title_search">Search</string>
<string name="title_share">Share</string>
</resources>
此代码是我的activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/app_name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="hobbiapps.destinyweeklytracker.MainActivity"
android:showAsAction="always"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/weekly"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<CheckBox
android:text="CheckBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkBox3"
android:layout_below="@+id/checkBox1"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<CheckBox
android:text="@string/vognormal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkBox1"
android:layout_below="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="13dp"
tools:ignore="UnknownId" />
</RelativeLayout>
这是我的main_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/settings_id"
android:title="Settings"
android:orderInCategory="0"
android:showAsAction="always"
android:icon="@drawable/ic_settings_black_24dp" //icon for settings
tools:ignore="AppCompatResource" />
<item
android:id="@+id/share_id"
android:title="Share"
android:showAsAction="always"
android:orderInCategory="0"
android:icon="@drawable/ic_share_black_24dp" //icon for sharing
tools:ignore="AppCompatResource" />
<item
android:id="@+id/about_me_id"
android:title="About Me"
android:showAsAction="never"
tools:ignore="AppCompatResource" />
<item
android:id="@+id/Contact_Me_id"
android:title="Contact Me"
android:showAsAction="never"
tools:ignore="AppCompatResource" />
<item
android:id="@+id/search_id"
android:title="Search"
android:orderInCategory="0"
android:showAsAction="always"
tools:ignore="AppCompatResource"
android:icon="@drawable/ic_search_black_24dp"/> //icon for searching
</menu>
最后但并非最不重要的是MainActivity.java
package hobbiapps.destinyweeklytracker;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.support.v7.app.ActionBarActivity;
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 menuinflater = getMenuInflater();
menuinflater.inflate(R.menu.main_menu, menu);
return true;
}
}
提前感谢您的帮助!!!
答案 0 :(得分:0)
好的,您使用的是自定义工具栏吗?如果不是我建议先做的,添加一个自定义工具栏。很容易,
将类似于xml
的内容放入其中<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@color/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
</android.support.v7.widget.Toolbar>
然后您想要将这些代码行添加到使用工具栏的每个页面
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(R.string.(YOUR STRING);
getSupportActionBar().setIcon(R.mipmap.(YOUR LOGO);
还有 在您的活动XML中
<include layout="@layout/toolbar"
android:id="@+id/seekrToolbar"/>
然后返回活动代码
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main_menu, menu);
return super.onCreateOptionsMenu(menu);
}
然后选择项目
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.settings_id) {
}
if (item.getItemId() == R.id.share_id) {
}
if (item.getItemId() == R.id.about_me_id) {
}
if (item.getItemId() == R.id.contact_me_id) {
}
if (item.getItemId() == R.id.search_id) {
}
return super.onOptionsItemSelected(item);
}