通过菜单子项onclick

时间:2018-12-12 09:52:26

标签: java android android-studio radio-button

当我单击菜单子项中的相应项目时,我想更改textview的字体类型。我有字体选项Kadwa,Vollkorn和Default,它是droid sans。我已经能够在点击时显示烤面包。我是android studio的新手,到目前为止,下面是我的代码,并在下面附上了屏幕截图。不知道下一步该怎么做。谢谢你的帮助。 Image

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu_text, 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();

    //noinspection SimplifiableIfStatement

    if (id == R.id.item2) {
        Toast.makeText(this, "Night mode", Toast.LENGTH_LONG).show();
        return true;
    }

    if (id == R.id.item3) {
        Toast.makeText(this, "Fonts", Toast.LENGTH_LONG).show();
        return true;
    }

    if (id == R.id.font1) {

        Toast.makeText(this, "Font 1", Toast.LENGTH_LONG).show();
        return true;
    }

    if (id == R.id.font2) {
        Toast.makeText(this, "Font 2", Toast.LENGTH_LONG).show();
        return true;
    }

    if (id == R.id.font3) {
        Toast.makeText(this, "Font 3", Toast.LENGTH_LONG).show();
        return true;
    }


    return super.onOptionsItemSelected(item);
}

菜单xml

  <?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:title="@string/settings"
    app:showAsAction="always">

    <menu>

        <item android:id="@+id/item2"
            android:title="@string/night_mode"
            android:icon="@drawable/ic_night"
            app:showAsAction="withText" />

        <item android:id="@+id/item3"
            android:title="@string/font"
            app:showAsAction="never" >

            <menu>

                <item android:id="@+id/font1"
                    android:title="Kadwa"/>

                <item android:id="@+id/font2"
                    android:title="Vollkorn"/>

                <item android:id="@+id/font3"
                    android:title="Default"/>

            </menu>

        </item>


    </menu>


</item>

2 个答案:

答案 0 :(得分:1)

    for (var i in CKEDITOR.instances) {
        CKEDITOR.instances[i].execCommand('scaytToggle');
    }

答案 1 :(得分:0)

TextView 上使用 setTypeFace 方法。

您可以通过以下方式获取字体/字体:

ResourcesCompat.getFont(this, R.font.fontnamehere)