0

我的应用程序中有一个登录屏幕,其中包含两个选项 - “登录”和“创建帐户”。我想在登录屏幕上实现以下内容:

在此处输入图像描述

我有一个活动和另一个活动,通过点击“UP”按钮我想返回。我有以下所需活动的构造函数:

protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_bl__login_form_view_controller);
    getActionBar().setDisplayHomeAsUpEnabled(true);

    //----------------------added source - no effect-----------------------

    getActionBar().setDisplayShowHomeEnabled(true);
    getActionBar().setIcon(R.drawable.circle) ;
    getActionBar().setTitle("A title");


    //---------------------------------------------------------------------
    setTitle ("Вход") ;
}

我有向上按钮。如何添加圆形图像和一些文字?所有教程都说,我可以在 AppManifest 中设置应用程序图标,但它会更改主屏幕上的应用程序图标。以及如何将文本添加到后退按钮?我不想为整个应用程序实现任何导航逻辑或设置父活动,因为它是一个登录屏幕,只有在授权后才会显示带有导航逻辑的主菜单。提前致谢!

4

6 回答 6

6

setTitle将设置标题并将setIcon图标设置为ActionBar.

getActionBar().setTitle("Your Title");
getActionBar().setDisplayShowHomeEnabled(true);
getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setIcon(R.drawable.youricon);

参考:添加操作http://developer.android.com/guide/topics/ui/actionbar.html

于 2014-09-02T08:27:15.537 回答
1

关于什么:

getActionBar().setIcon(R.drawable.circle);
于 2014-09-02T08:04:02.883 回答
0

用于getActionBar().setIcon(R.drawable.youricon)设置图标和getActionBar().setTitle("A title");设置图标旁边的文本。

于 2014-09-02T08:05:42.770 回答
0

对于图标:

getActionBar().setIcon(R.drawable.youricon);

对于标题:

getActionBar().setTitle("A title");
于 2014-09-02T08:08:10.453 回答
0

您可以使用自己的布局使用自定义操作栏

actionBar.setDisplayShowHomeEnabled(false);
actionBar.setHomeButtonEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);

final ViewGroup actionBarLayout = (ViewGroup)getLayoutInflater().inflate(R.layout.yourXML, null);
actionBarLayout.findViewById(R.id.buttonId).setOnClickListener(this);

actionBar.setCustomView(actionBarLayout);

它为我工作。所以我希望它对你有用。

于 2014-09-02T08:30:33.033 回答
0

接受的答案很好地解决了这个问题。我只是添加一些使用自定义操作栏布局的附加信息。

getActionBar().setTitle("Your Title");
getActionBar().setDisplayShowHomeEnabled(true);
getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setIcon(R.drawable.youricon);
// You can use setLogo instead like 
// getActionBar().setIcon(R.drawable.youricon);

// In case of support action bar, if its not showing properly, you need to add display options
//getActionBar().setDisplayOptions(actionBar.getDisplayOptions() | ActionBar.DISPLAY_SHOW_CUSTOM);

现在这里有一段代码,描述了如何在 android actionbar 中使用自定义布局。

// Make a layout named 'custom_actionbar' and simply add elements you want to show in your actionbar.
final ViewGroup actionBarLayout = (ViewGroup) getLayoutInflater()
                .inflate(R.layout.custom_actionbar, null);
// Now for support action bar, get the action bar 
actionBar = getSupportActionBar();

// Set necessary attributes
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setHomeButtonEnabled(true);
actionBar.setElevation(0);

// Set the custom layout in actionbar here
actionBar.setCustomView(actionBarLayout);
actionBar.setDisplayOptions(actionBar.getDisplayOptions()
                | ActionBar.DISPLAY_SHOW_CUSTOM);

// Now handle the elements of the custom layout here
Button b1 = (Button) findViewById(R.id.button1);
// Set actions for Button 1 here
b1.setText("Button 1");

// Another element in custom actionbar
ImageView iv1 = (ImageView) findViewById(R.id.myImage);
iv1.setBackgroundResource(R.drawable.myImagePlaceHolder);

将代码放入onCrate并自行检查。

于 2015-11-05T04:34:37.240 回答