小编RVG*_*RVG的帖子

在Android中从url下载图像的最佳方法

我正在使用以下方法从url下载单个图像

public static Bitmap getBitmap(String url) {
    try {
        InputStream is = (InputStream) new URL(url).getContent();
        Bitmap d = BitmapFactory.decodeStream(is);
        is.close();
        return d;
    } catch (Exception e) {
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

有时我会得到一个outofmemory异常.

我无法捕捉到内存异常.该应用程序将关闭.怎么预防这个?

是否有更好的下载图像的方法也更快?

android

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

在Playstore中,我们可以使用两个具有相同名称和不同包的应用程序 - Android

我使用自己的包名在Google Play商店上传了应用程序.

以后客户端想要更改包名称.

我已经搜索了但是我知道了,发布后无法更改包名.

我能为此做些什么?

在Playstore中我们可以有两个同名且不同包的应用程序吗?

android google-play

15
推荐指数
2
解决办法
3万
查看次数

仅当在android上打开虚拟键盘时才向上移动文本视图

我的xml代码在这里,

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/mainlayout" >

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true" 
    android:id="@+id/toplayout">
    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="100dp"
        android:src="@drawable/bg" />
</LinearLayout>


<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" 
    android:id="@+id/bottomlayout">
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="Enter value" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

当我执行时,我得到这样的,

在此输入图像描述

执行后,当我在编辑文本中输入值时,虚拟键盘打开,整个主布局向上滚动,我得到这样的

在此输入图像描述

但我除了,顶部布局不向上滚动,只有底部布局或textview向上滚动.我希望这样, 在此输入图像描述

打开虚拟键盘时如何仅滚动编辑视图.?

android android-layout

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

使用yyyy-MM-dd hh:mm:ss格式解析日期的意外差异

我运行下面的java代码来获得时差.

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;


public class Test 
{
    public static SimpleDateFormat simpleDateFormat= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    public static Date date1,date2;
    public static long diff; 
    public static String TAG ="DateConversion";
    public static Calendar cal1,cal2;

    public static void main(String a[])
    {
        checkTimeDifference("2013-10-30 10:15:00", "2013-10-30 11:15:00");
        checkTimeDifference("2013-10-30 10:15:00", "2013-10-30 12:15:00");
        checkTimeDifference("2013-10-30 10:15:00", "2013-10-30 13:15:00");
    }

    public static  void checkTimeDifference(String strDate,String checkDate)
    {
        try 
        {
            simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
            date1    = simpleDateFormat.parse(strDate);
            date2    = simpleDateFormat.parse(checkDate);

            //in milliseconds
            diff = date2.getTime() - date1.getTime();
            System.out.println("Difference …
Run Code Online (Sandbox Code Playgroud)

java simpledateformat

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

在android上的geopoints之间绘制平滑线

我在地理位置之间画了一条线.它成功地画了.当我们看到地图时,当下一次拉伸时,画线看起来像是像素化的.如何合并线?

在此输入图像描述

我的代码在这里,

@Override
public void draw(Canvas canvas, MapView mapview, boolean shadow) {
    super.draw(canvas, mapview, shadow);
    if(! routeIsActive) return;

    mapview.getProjection().toPixels(locpoint, pp);       // Converts GeoPoint to screen pixels

    int xoff = 0;
    int yoff = 0;
    int oldx = pp.x;
    int oldy = pp.y;
    int newx = oldx + xoff;
    int newy = oldy + yoff;

    paint.setAntiAlias(true);
    paint.setDither(true);
            paint.setStrokeWidth(7);
    for(int i=0; i<numberRoutePoints-1; i++)
    {
        switch(routeMode.get(i))
        {
        case 0:
            paint.setColor(Color.parseColor("#666666"));
            break;
        case 1:
            paint.setColor(Color.parseColor("#0EA7D6"));
            break;
        case 2:
            paint.setColor(Color.parseColor("#654321"));
            break;
        case 3:
            paint.setColor(Color.parseColor("#123456"));
            break; …
Run Code Online (Sandbox Code Playgroud)

android google-maps draw

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

如何分辨两个地理点的方向

我有3个地理位置

(开始位置)11.986242477259117,79.84657287597656`

(中间位置)11.984521304799278,79.84583258628845

(结束位置)11.985014568760436,79.844491481781

我从如何使用kml文件在地图上绘制路径获得了解

我已经在地理点之间绘制了这条线.

在此输入图像描述

我使用如何使用经度和纬度值计算两个位置之间的距离来计算距离

我的问题是,当用户站在"A"(开始位置)附近时,我想告诉方向,你要移动到"北方","东方","西方","南方"这样,.

如果用户错误地移动其他方向,需要说出"你有错误的方向"并说出正确的方向.

如何获得两个地理点之间的方向.

我从两个经度/纬度点获得方向(指南针)得到了这个

它返回一定程度,但我告诉正确的方向我是没有意义的.

如何获得两个地理点之间的方向.

android point direction geopoints

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

在android上查找开始地理点和结束地理点之间的中心地理位置

我已经开始纬度,经度和结束纬度,经度.

我使用纬度和经度找到Geo Point.

之后我在两个Geo点之间画线.

我的问题是如何找到Geopoint的中心?

我在开始和结束位置显示"OverlayItem".但无法找到Geopoint的中心.

如何找到中心点?

我使用下面的代码在开始和结束位置显示overlayItem.

        drawable            = getResources().getDrawable(R.drawable.annot_start);
        point               = new GeoPoint((int)(startLatitude*1E6), (int)(startLongitude*1E6));
        overlayItem         = new OverlayItem(point, startAddress, "Welcome");
        itemizedOverlay[n]= new MyItemizedOverlay(drawable, mapView);
        itemizedOverlay[n].addOverlay(overlayItem);
        mapOverlays.add(itemizedOverlay[n]);

        drawable            = getResources().getDrawable(R.drawable.annot_end);
        point               = new GeoPoint((int)(endLatitude*1E6), (int)(endLongitude*1E6));
        overlayItem         = new OverlayItem(point, endAddress, "Welcome");
        itemizedOverlay[n+1]= new MyItemizedOverlay(drawable, mapView);
        itemizedOverlay[n+1].addOverlay(overlayItem);
        mapOverlays.add(itemizedOverlay[n+1]);
Run Code Online (Sandbox Code Playgroud)

android

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

获取图像元数据 - Android

http://www.isco.com/webproductimages/appBnr/bnr1.jpg

我用过一个网站来查看图像的元数据.在这个网站上,它显示了图像的所有信息.我想知道如何在android中获取上面图像的"Title"标签.

我在这里找到了仅适用于iOS的类似问题:如何在ios中获取图像元数据

但是我不知道如何在android上获取图像的"元数据".ExifInterface只给出了一些信息.但我无法获得"标题"标签.

你能提供任何代码片段来获取android for image中的元数据吗?

android metadata android-image

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

检测后退按键 - 键盘打开时

键盘打开时如何检测android后退键?

键盘隐藏时我想隐藏listview.

我使用下面的代码

final View activityRootView = findViewById(R.id.globallayout);

        activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() 
            {

                int heightDiff = activityRootView.getRootView().getHeight() - activityRootView.getHeight();

                if (heightDiff > 55) 
                { 
//keyboard is showing.
                }
                else  {

                    if(PopUpLayoutList.getVisibility()==View.VISIBLE){
                                            PopUpLayoutList.setVisibility(View.GONE);
                    }
                }
            }
        });
Run Code Online (Sandbox Code Playgroud)

但是,如果列表包含超过500行.键盘没有正确隐藏.需要5至10秒.

怎么解决这个?

android

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

计算黑莓手机上的字符串宽度/高度

如果我使用drawtext(txt,ax,ay)方法在自定义字段中显示字符串,我该如何计算字符串宽度/高度.

blackberry

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