相关疑难解决方法(0)

对DialogFragment执行ActionBar操作

我有一个DialogFragment风格全屏使用setStyle(STYLE_NORMAL, R.style.Theme_App).

DialogFragment精细显示,但后续行动(在homeAsUp在动作条的动作)不起作用.我尝试onOptionsItemSelected在实施中,DialogFragment但它永远不会被调用.

有没有办法在DialogFragment中获取up动作回调,所以我可以解雇它?作为参考,我正在使用ActionBarCompat.

android android-dialogfragment dialogfragment android-actionbar-compat

8
推荐指数
2
解决办法
9603
查看次数

向上导航(操作栏的后退箭头)不适用于片段

我将抽屉布局作为我活动的基本布局,我正在替换这个抽屉布局内的框架上的两个碎片.第一个片段未添加到片段的后栈中.我在我的活动中显示汉堡包图标(我还想在我的第一个片段中使用抽屉菜单).在第二个片段中,我禁用了汉堡包图标mActionBarDrawerToggle.setDrawerIndicatorEnabled(false)并启用了后退按钮actionBar.setDisplayHomeAsUpEnabled(true).

在第一个片段onResume我通过mActionBarDrawerToggle.setDrawerIndicatorEnabled(true)启用了汉堡包图标,这样当用户从第二个片段按下按钮(硬件和动作栏的向上按钮)时,用户将返回第一个片段并启用汉堡包图标.一切都很好,只是我无法从第二个片段动作栏后退按钮返回.我无法点击它.以下是我的代码: -

活动代码

if (Utility.isLargeScreen(this))
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    else
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

    mHiddenGemsApplication = (HiddenGemsApplication) getApplication();

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_home);
    initViews();

    setSupportActionBar(mToolbar);
    ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setDisplayShowTitleEnabled(false);
        actionBar.setDisplayHomeAsUpEnabled(true);
    }
    mTextViewActionBarTitle.setText(getString(R.string.app_name));

    mActionBarDrawerToggle = new ActionBarDrawerToggle(HomeActivity.this, mDrawerLayout, mToolbar, R.string.open_drawer, R.string.close_drawer) {

        @Override
        public void onDrawerClosed(View drawerView) {
            super.onDrawerClosed(drawerView);
        }

        @Override
        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
        }
    };

    mDrawerLayout.setDrawerListener(mActionBarDrawerToggle);

    mActionBarDrawerToggle.syncState();

    mFragmentManager = getSupportFragmentManager();

    replaceFragment(new CategoryFragment(), getString(R.string.app_name), CategoryFragment.TAG);

 @Override
public void onBackPressed() {

    if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
        mDrawerLayout.closeDrawers();
        return;
    } …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-fragments android-actionbar android-toolbar

8
推荐指数
1
解决办法
3537
查看次数

操作栏的显示后退按钮不会在Android中返回

我正在开发一款Android应用.我正在使用ActionBar和AppCompactActivity.在我的应用程序中,我将按钮添加到操作栏.但是当我点击它时,它不会回到之前的活动.例如,我从活动1开始活动2.活动2包含带后退按钮的操作栏.但是当我点击活动2的操作栏后退按钮时,它不会返回到活动1.

这就是我为活动2设置操作栏的方法:

public class EditProfileActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.edit_profile);
        Toolbar toolbar = (Toolbar)findViewById(R.id.profile_action_toolbar);
        setSupportActionBar(toolbar);
        setTitle("Edit Profile");
        ActionBar actionBar= getSupportActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
    }
}
Run Code Online (Sandbox Code Playgroud)

这就是我从活动1开始活动2的方式:

Intent i = new Intent(MainActivity.this,SecondActivity.class);
                    startActivity(i);
Run Code Online (Sandbox Code Playgroud)

单击此按钮时不会返回

在此输入图像描述

为什么不回去?

android android-actionbar

6
推荐指数
2
解决办法
1万
查看次数

Android Up按钮无效

我正在尝试手动实现按下操作栏上的向上按钮时必须执行的操作,但出于某种原因,当我按下它时没有任何反应.

这是我的代码:

public class ActivityOne extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_activity_one);
        Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar_actionbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        Button button = (Button)findViewById(R.id.btn1);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openActivityTwo();
            }
        });
        Button button2 = (Button)findViewById(R.id.btn2);
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openActivityThree();
            }
        });
    }


    void openActivityTwo(){
        Intent intent = new Intent(this, ActivityTwo.class);
        startActivity(intent);
    }

    void openActivityThree(){
        Intent intent = new Intent(this, ActivityThree.class);
        startActivity(intent);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) …
Run Code Online (Sandbox Code Playgroud)

java android r.java-file android-activity android-studio

5
推荐指数
1
解决办法
3573
查看次数

Android操作栏导航按钮无法在设备上运行

操作栏向上导航按钮 动作栏后退按钮 在模拟器中工作正常但在设备中不起作用任何人都可以帮助我

主要活动

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

    tf = Typeface.createFromAsset(getAssets(), "font/AGENCYB.TTF");

    Button btnWeatherDetails = (Button) findViewById(R.id.btnWeather);
    Button btnMovieDetails = (Button) findViewById(R.id.btnMovies);
    Button btnHoroscopeDetails = (Button) findViewById(R.id.btnHoroscope);

    btnWeatherDetails.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {               
            Intent i = new Intent(MainActivity.this, WeatherActivity.class);
            MainActivity.this.startActivity(i);
        }
    });


    btnMovieDetails.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {

            Intent i = new Intent(MainActivity.this, MovieActivity.class);
            MainActivity.this.startActivity(i);             
        }
    });

    btnHoroscopeDetails.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {

            Intent i = new Intent(MainActivity.this, …
Run Code Online (Sandbox Code Playgroud)

android navigationbar android-activity android-actionbar

4
推荐指数
3
解决办法
6759
查看次数

AppCompatPreferenceActivity向上按钮不起作用

我正在尝试创建一个扩展AppCompatPreferenceActivity并在操作栏中实现向上按钮的活动.视觉上一切看起来都很好,但向上按钮不响应触摸事件.以下是我的java和xml代码:

PrefrencesDisplayActivity.java

package com.example.matthew.testsettings;

import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CoordinatorLayout;
import android.support.v7.widget.Toolbar;
import android.widget.ListView;
import android.widget.RelativeLayout;

import java.util.List;

public class PreferencesDisplayActivity extends AppCompatPreferenceActivity {
    CoordinatorLayout activityRoot;
    AppBarLayout appBarLayout;
    Toolbar toolbar;
    RelativeLayout contentRoot;
    ListView preferencesList;

    @Override
    public void onBuildHeaders(List<Header> target) {
        loadHeadersFromResource(R.xml.preferences, target);
        initialiseUI();
    }

    private void initialiseUI() {
        // Inflate activity layout from xml
        setContentView(R.layout.activity_preferences_display);

        // Get handles to UI elements
        activityRoot = (CoordinatorLayout) findViewById(R.id.prefDisplay_activity_root);
        appBarLayout = (AppBarLayout) findViewById(R.id.prefdisplay_activity_appBarLayout);
        toolbar = (Toolbar) findViewById(R.id.prefDisplay_activity_toolbar);
        contentRoot = (RelativeLayout) findViewById(R.id.prefDisplay_content_root);
        preferencesList = (ListView) findViewById(android.R.id.list);

        // …
Run Code Online (Sandbox Code Playgroud)

android

4
推荐指数
1
解决办法
2269
查看次数