小编N J*_*N J的帖子

android ImageButton缩放并保持纵横比

我有一个我正在尝试布局的屏幕......

基本上,我试图在屏幕上垂直均匀分布4个ImageButton对象...我在这里使用它来均匀分布项目,但现在我有一个可怕的时间来缩放图像但保持纵横比......如果我使用scaleType="centerInside"它们不缩放,如果我使用"fitXY"它们不保持纵横比...这里是布局的样子:

在此输入图像描述

这是代码:

    <LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" android:layout_margin="0dp"
  android:padding="0dp"
  android:orientation="vertical"
  android:weightSum="5"
  >


        <ImageButton android:id="@+id/share_song" 
            android:layout_width="fill_parent" android:text=""
            android:layout_marginLeft="0dp"
            android:layout_marginTop="15dp"
            android:layout_marginRight="5dp"
            android:layout_marginBottom="5dp"
            android:gravity="left" 
            android:src="@drawable/share_song_button_sel"
            android:adjustViewBounds="true"
            android:background="#0000"
            android:scaleType="fitXY"
          android:layout_height="0dp"
          android:layout_weight="1"
            />
        <Button 
            android:layout_width="wrap_content" 
            android:text="" android:id="@+id/tag_a_song"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:layout_marginRight="0dp"
            android:layout_marginBottom="5dp"
            android:gravity="right" 
            android:layout_gravity="right"
            android:background="@drawable/song_check_in_button_sel"
          android:layout_height="0dp"
          android:layout_weight="1"
            />
        <Button android:id="@+id/match_button" 
            android:layout_width="wrap_content" android:text=""
            android:layout_marginLeft="0dp"
            android:layout_marginTop="10dp"
            android:layout_marginRight="0dp"
            android:layout_marginBottom="5dp"
            android:gravity="left" 
            android:background="@drawable/music_match_button_sel"
          android:layout_height="0dp"
          android:layout_weight="1"
            />
        <Button android:id="@+id/friends_button" 
            android:layout_width="wrap_content" android:text=""
            android:layout_marginLeft="0dp"
            android:layout_marginTop="10dp"
            android:layout_marginRight="0dp"
            android:layout_marginBottom="5dp"
            android:gravity="right" 
            android:layout_gravity="right"
            android:background="@drawable/my_friends_music_button_sel"
          android:layout_height="0dp"
          android:layout_weight="1"
            />

        <LinearLayout
          xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="0dp"
          android:layout_weight="1"
          android:orientation="horizontal"
          android:layout_marginRight="0dp" …
Run Code Online (Sandbox Code Playgroud)

layout android scale aspect-ratio imagebutton

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

使用Coordinatorlayout滚动时,Android工具栏会消失

当我尝试用the实现工具栏时发生了一件奇怪的事情Coordinatorlayout.

  1. 当我向下滚动并toolbar正确向上滚动节目时,一切似乎都没问题

在此输入图像描述

  1. 然而,当我向下滚动到某个级别后,屏幕就变成了

在此输入图像描述

XML在下面,任何想法,谢谢?

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_height="match_parent">

<android.support.v7.widget.RecyclerView
    android:id="@+id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    />

<android.support.design.widget.AppBarLayout
    android:id="@+id/appbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
        app:layout_scrollFlags="scroll|enterAlways"
        />

</android.support.design.widget.AppBarLayout>
Run Code Online (Sandbox Code Playgroud)

android toolbar

7
推荐指数
1
解决办法
3557
查看次数

如何使活动背景透明并模糊背景

当我启动我的应用程序时,它会启动一个Activity应该有透明标题,并且背景中当前显示的任何内容都应该模糊.

在此输入图像描述

我能够获得透明度.但我无法弄清楚如何模糊背景.例如,如果我从主屏幕启动应用程序,那么主屏幕应该是可见的但模糊了.

我有一个想法是使用Framebuffer来获取当前显示的数据,但是如何将其转换为位图,我可以使用它来绘制图像而不保存图像并直接使用数据.

我也知道我们可以通过按电源和音量按钮来截取屏幕截图.有没有人知道android中的代码在哪里?我的应用程序将具有系统访问权

android android-activity android-blur-effect android-renderscript

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

如何在某些部分上方生成带有标题的ListView?

我想生成一个ListView在某些条目之间有一些分隔符的东西,就像在某些属性部分中可以看到的那样.请参阅下面的示例.我尝试生成List一个包含一些textviews其次是看中分隔解释列表中的下一个部分,然后再一些文本画面之一.如何才能做到这一点?我想创建不同的视图来添加到列表中?这是要走的路吗?

android divider android-listview

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

Google地图可以在模拟器上显示,但不能在Android设备中显示

我已经获得了在地图模拟器上运行的Google地图API密钥,但是当我在真正的Android设备上运行该程序时,它Map并没有显示出来.我已经阅读了一些说明我必须从谷歌获得发布密钥的解决方案,但解决方案并没有告诉我如何获得这些密钥

android google-maps google-maps-api-3 android-emulator

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

有没有办法在没有Android按钮的情况下使用Twitter数字?

我正在制作一个使用Twitter数字的应用程序,我想知道是否有办法使用它而不使用丑陋的Twitter数字按钮,上面写着" 使用我的电话号码 "

java android twitter-digits

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

在setSupportActionBar之后,getSupportActionBar可以为空吗?

getSupportActionBar()即使我之前在该方法中设置了支持操作栏,我也应该检查方法getSupportActionBar()吗?

onCreate()我有三条线

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(getIntent().getStringExtra(TITLE_KEY));
Run Code Online (Sandbox Code Playgroud)

Android Studio然后给我警告

"Method invocation may produce java.lang.NullPointerException"
Run Code Online (Sandbox Code Playgroud)

假设findViewById方法确实返回了一个有效的ToolBar对象,我是否仍然需要对该getSupportActionBar()方法进行null检查,或者只是忽略该警告是否安全?

android android-studio android-toolbar

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

以编程方式重启app?

我需要以编程方式重新启动应用程序.我的启动器活动称为" 登录 ",登录后,主要活动称为" 主要 ".在主要活动中,我想重新启动应用程序.所以我有以下内容:

Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
Run Code Online (Sandbox Code Playgroud)

这将显示"登录"活动,但是当我按下时,我将返回上一个活动.

有没有更好的方法来真正重启应用程序?

android

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

如何在我的应用程序中实现applock advance protection等功能

我想使应用程序与AppLock类似,android.app lock具有提前保护功能,可以停止卸载应用程序.它可以支持手机生根.我一起尝试了几个小时,尝试了很多来自stackoverflow的类似问题的解决方案,但无法通过它.

在这样做时,我遇到了"设备管理员权限".

  1. 我可以使用管理员权限做我想做的事情.

  2. 如果不是AppLock预防保护如何工作我的意思是它如何限制用户卸载应用程序.

android

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

减少导航抽屉内菜单组之间的空间

我想减少导航抽屉中每个菜单组之间的空间(在下图中,两行之间的空格).

在此输入图像描述

我创建了一个自定义样式并尝试了以下属性

<item name="android:paddingTop">0dp</item>
<item name="android:paddingBottom">0dp</item>
Run Code Online (Sandbox Code Playgroud)

他们只减少了项目文本周围的填充.

甚至以下属性也没有奏效

<item name="android:layout_marginTop">0dp</item>
<item name="android:layout_marginBottom">0dp</item>
Run Code Online (Sandbox Code Playgroud)

android navigation-drawer

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