对于提示用户转到设置页面并启用位置服务并再次返回的传统方法,我注意到在一些最新的应用程序中执行相同操作的更简单方法.
参考下面的截图,它会提示一个对话框,用户只需点击一下鼠标,使定位服务,它在这些应用程序的工作原理.
我怎样才能实现同样的目标?
如何onClickListener为Action Bar的Home按钮实现自定义?
我已经做了一个getSupportActionBar().setDisplayHomeAsUpEnabled(true);,现在我想将用户重定向到某个活动,以防点击Home按钮.
我尝试过:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
item.setOnMenuItemClickListener(new OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
Intent i = new Intent();
i.setClass(BestemmingActivity.this, StartActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
return true;
}
});
default:
return super.onOptionsItemSelected(item);
}
}
Run Code Online (Sandbox Code Playgroud)
但它永远不会进入onMenuItemClick.
基本上,它就像在这个链接中一样,但它仍然没有进入监听器.
android android-intent onitemclicklistener actionbarsherlock
我有一个URI图像文件,我想减小它的大小上传它.初始图像文件大小取决于从移动设备到移动设备(可以是2MB,可以是500KB),但我希望最终大小约为200KB,以便我可以上传它.
从我读到的,我有(至少)2个选择:
什么是最好的选择?
我想最初调整图像宽度/高度,直到宽度或高度高于1000px(类似1024x768或其他),然后压缩图像质量下降,直到文件大小超过200KB.这是一个例子:
int MAX_IMAGE_SIZE = 200 * 1024; // max final file size
Bitmap bmpPic = BitmapFactory.decodeFile(fileUri.getPath());
if ((bmpPic.getWidth() >= 1024) && (bmpPic.getHeight() >= 1024)) {
BitmapFactory.Options bmpOptions = new BitmapFactory.Options();
bmpOptions.inSampleSize = 1;
while ((bmpPic.getWidth() >= 1024) && (bmpPic.getHeight() >= 1024)) {
bmpOptions.inSampleSize++;
bmpPic = BitmapFactory.decodeFile(fileUri.getPath(), bmpOptions);
}
Log.d(TAG, "Resize: " + bmpOptions.inSampleSize);
}
int compressQuality = 104; // quality decreasing by 5 every loop. (start from 99)
int streamLength = …Run Code Online (Sandbox Code Playgroud) 我正试图为listview分频器设置一个余量.
分隔线是虚线:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line" >
<stroke
android:dashGap="1dp"
android:dashWidth="1.5dp"
android:width="1dp"
android:color="#FF404040" />
<size android:height="3dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)
以及listview我设置分隔符的位置
<ListView
android:id="@+id/lv_news_feed_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white"
android:divider="@drawable/ch_dashed_line_divider"
/>
Run Code Online (Sandbox Code Playgroud)
但是我想要左右分隔边距.我也尝试在形状上设置填充,但listview忽略了填充.
<padding
android:bottom="15dp"
android:left="15dp"
android:right="15dp"
android:top="15dp" />
Run Code Online (Sandbox Code Playgroud)
是否有可能为listview分频器设置余量- 除了适配器的getView()?
我正在从URL下载ePub文件.
现在我想实现一种机制,如果用户尝试重新下载同一个文件,他应该收到警告/错误消息,并且不应该再次下载该文件.
为了实现这一点,我需要检查我的库中存在的文件的名称,以及用户试图下载的文件的名称.
但我只有这个下载链接,而不是文件名.
如何在下载之前获取文件的名称以便将其与现有文件进行比较?
我是Android开发的新手.
我想将一个html文件加载到webview中.
请注意,有对SO像许多相关的问题这个,但他们都处理获得**.*HTML从资产的文件夹.
但我想从本地文件夹加载html文件,说"D://abc.html",因为如果我的html大约是10Mb,那么相应的apk大小也会达到10mb.
任何帮助赞赏.
我试过了 webView.loadUrl("file:///D:/Projects/myWebsite/index.html");
但它给了Web page not available和File not found error.
当我试图将我的项目从eclipse合并到netbeans时,我遇到了这个奇怪的问题.现在,当我试图重新运行eclipse时,我得到了这个错误
"Android SDK需要android开发者工具包版本17.0.0或更高版本"
我试图解决这个问题的方法是尝试更新其中的SDK和工具包.
到目前为止,一切都在更新,现在我一无所知.

问题:
路径:
Android SDK: C:\Program Files\Android\android-sdk
JDK used for android: C:\Program Files\Java\jdk1.7.0_04 (There are other JDKs also in dir Java)
Run Code Online (Sandbox Code Playgroud)
环境变量:
ANDROID_SDK_HOME: C:\Program Files\Android\android-sdk
JAVA_HOME: C:\Program Files\Java\jdk1.7.0_04;C:\Program Files (x86)\Java\jre1.6.0;C:\Program Files\Java\jre7;
System Path: C:\Program Files\Java\jdk1.7.0_04\bin;C:\Program Files\Java\jdk1.7.0_01\bin;C:\Program Files (x86)\Java\jdk1.5.0\bin;C:\Program Files\Android\android-sdk\tools\
Run Code Online (Sandbox Code Playgroud)
错误:
SDK Manager on cmd
Failed to execute tools\android.bat.
The system cannot find the file specified
Android.bat on cmd
Unable to access jar file lib\archquery.jar
Invalid path
find_java on cmd
nothing returned
Run Code Online (Sandbox Code Playgroud) 我正在开发使用Android应用程序JSON的数据格式,我需要使用Jackson JSON library的JSON handling.
任何人都可以建议一些很好的教程Jackson.
我查看了杰克逊的官方网站,但网站上的教程有些令人困惑.我只需要杰克逊的一些基础教程.
我在我的onCreate()方法中添加了这部分代码,它崩溃了我的应用程序.需要帮忙.
logcat的:
android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread
that created a view hierarchy can touch its views.
Run Code Online (Sandbox Code Playgroud)
码:
final TextView timerDisplayPanel = (TextView) findViewById(R.id.textView2);
Timer t = new Timer();
t.schedule(new TimerTask(){
public void run(){
timerInt++;
Log.d("timer", "timer");
timerDisplayPanel.setText("Time ="+ timerInt +"Sec");
}
},10, 1000);
Run Code Online (Sandbox Code Playgroud)