代码之家  ›  专栏  ›  技术社区  ›  Moin Khan

如何在注销图标之前的右侧边缘(即)显示imageview?

  •  2
  • Moin Khan  · 技术社区  · 7 年前

    actionBar.setDisplayOptions(actionBar.getDisplayOptions()
                                | ActionBar.DISPLAY_SHOW_CUSTOM);
    
                        imageView.setScaleType(ImageView.ScaleType.CENTER);
                        Picasso.with(HomeActivity.this).load(AppConfig.profilePic + image).placeholder(R.drawable.profile).transform(new CircleTransform()).fit().into(imageView);
                        ActionBar.LayoutParams layoutParams = new ActionBar.LayoutParams(
                                ActionBar.LayoutParams.WRAP_CONTENT,
                                ActionBar.LayoutParams.WRAP_CONTENT, Gravity.RIGHT
                                | Gravity.CENTER_VERTICAL);
                        layoutParams.gravity = Gravity.RIGHT;
                        imageView.setLayoutParams(layoutParams);
                        actionBar.setCustomView(imageView);
    

    enter image description here

    3 回复  |  直到 7 年前
        1
  •  3
  •   ahmed shaaban    7 年前

    这不能作为先显示标题的标准 解决方案>&燃气轮机;使用自定义动作栏 1-构建自己的布局 3-使用include将自定义actionBar添加到您想要的任何布局中

    <android.support.v7.widget.Toolbar
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
        app:layout_scrollFlags="scroll|enterAlways"
        app:layout_collapseMode="pin">
        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    
            <ImageView
                android:id="@+id/toolbar_logo"
                android:src="@drawable/logo"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:layout_marginRight="?attr/actionBarSize"
                android:layout_marginTop="4dp"
                android:layout_marginBottom="4dp" />
    
            <TextView
                android:id="@+id/toolbar_title"
                android:orientation="horizontal"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:layout_marginRight="?attr/actionBarSize"
                android:layout_gravity="center"
                android:gravity="center_vertical"
                android:visibility="gone"
                android:text="@string/app_name"
                android:textColor="@color/white"
                style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse"
                />
    
    
        </FrameLayout>
    </android.support.v7.widget.Toolbar>
    
        2
  •  3
  •   SWAPDROiD    7 年前

    您想创建如下自定义工具栏

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/toolbarLogo"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/colorPrimary"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
        app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
    
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
            <ImageView
                android:id="@+id/ivBackArrow"
                android:layout_width="32dp"
                android:layout_height="32dp"
                android:layout_centerVertical="true"
                android:background="@drawable/ic_back_arrow_black" />
    
            <TextView
                android:id="@+id/toolbar_text_title"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_gravity="center"
                android:gravity="left|center_vertical"
                android:singleLine="true"
                android:layout_toRightOf="@+id/ivBackArrow"
                android:layout_marginLeft="4dp"
                android:layout_toLeftOf="@+id/iv_profile"
                android:layout_centerHorizontal="true"
                android:text="ALERT"
                android:textColor="@color/colorBlack"
                android:textSize="20sp" />
    
            <ImageView
                android:id="@+id/iv_profile"
                android:layout_width="32dp"
                android:layout_height="32dp"
                android:layout_centerVertical="true"
                android:layout_toLeftOf="@+id/iv_logout"
                android:background="@drawable/ic_back_arrow_black" />
    
            <ImageView
                android:id="@+id/iv_logout"
                android:layout_width="32dp"
                android:layout_height="32dp"
                android:layout_centerVertical="true"
                android:layout_alignParentRight="true"
                android:background="@drawable/ic_back_arrow_black" />
        </RelativeLayout>
    
    </android.support.v7.widget.Toolbar>
    
        3
  •  0
  •   Suresh Kumar    7 年前

    您可以将图像设置为应用程序徽标。请尝试以下代码

    Picasso.with(this).load(yourImageUrl).into(new Target()
       {
           @Override
           public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from)
           {
               Drawable d = new BitmapDrawable(getResources(), bitmap);
               ab.setIcon(d);
               ab.setDisplayShowHomeEnabled(true);
               ab.setDisplayHomeAsUpEnabled(true);
           }
    
           @Override
           public void onBitmapFailed(Drawable errorDrawable)
           {
           }
    
           @Override
           public void onPrepareLoad(Drawable placeHolderDrawable)
           {
           }
       });