Questions tagged «android»

Android是Google的移动操作系统,用于对数字设备(智能手机,平板电脑,汽车,电视,Wear,Glass和IoT)进行编程或开发。对于与Android相关的主题,请使用特定于Android的标签,例如android-intent,android-activity,android-adapter等。对于与开发或编程无关但与Android框架相关的问题,请使用以下链接:https:// android.stackexchange.com。

5
SQLiteDatabase.query方法
我正在使用SQLiteDatabase的查询方法。如何使用查询方法? 我尝试了这个: Cursor cursor = sqLiteDatabase.query( tableName, tableColumns, whereClause, whereArgs, groupBy, having, orderBy); tableColumns-列参数的构造如下。 String[] columns = new String[]{KEY_ID, KEY_CONTENT}; 如果需要获取所有字段,那么应该如何构造column参数。我们是否需要在字符串数组中包括所有字段名称? 如何正确使用查询方法?
121 android  sqlite 

9
Android Fragment back stack的问题
我对android片段Backstack的工作方式遇到了一个很大的问题,对于提供的任何帮助将不胜感激。 假设您有3个片段 [1] [2] [3] 我希望用户能够导航[1] > [2] > [3]但在返回的途中(按返回按​​钮)[3] > [1]。 就像我想象的那样,这可以通过addToBackStack(..)在创建将片段[2]带入XML定义的片段持有者的事务时不调用来实现。 现实情况似乎是,如果我不想[2]在用户按下“后退”按钮时再次出现[3],则我不能调用addToBackStack显示片段的事务[3]。这似乎完全违反直觉(也许来自iOS世界)。 无论如何,如果我这样做,当我离开[1] > [2]并按回去时,我会按[1]预期到达。 如果我走了[1] > [2] > [3]然后按回去,我跳回了[1](按预期)。现在,当我尝试[2]从再次跳到时,就会发生奇怪的行为[1]。首先在[3]显示之前简要显示[2]。如果此时我按回,[3]将显示,如果我再次按回,则该应用程序退出。 谁能帮我了解这里的事吗? 这是我的主要活动的布局xml文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <fragment android:id="@+id/headerFragment" android:layout_width="match_parent" android:layout_height="wrap_content" class="com.fragment_test.FragmentControls" > <!-- Preview: layout=@layout/details --> </fragment> <FrameLayout android:id="@+id/detailFragment" android:layout_width="match_parent" android:layout_height="fill_parent" /> 更新 …

6
Android开发的隐藏功能?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它当前不接受新的答案或互动。 令我感到惊讶的是,我已经追踪了一段时间的“ 隐藏功能”系列中还没有“ Android 隐藏功能”帖子。 “隐藏功能”系列非常适合使用某种特定语言的用户。它在同一位置显示了绳索和某些有价值的技巧。我认为这是一个绝妙的主意。甚至专家有时也会找到他们从未听说过的技巧。 我正在开始Android开发,很想听听它的隐藏功能,技巧,窍门和陷阱。 所以,这里有云:什么是一些隐藏的功能的安卓?

4
如何在Android上使用Cookie发出http请求?
我想在正确处理Cookie的同时向远程服务器发出http请求(例如,存储服务器发送的Cookie,并在随后的请求中发送这些Cookie)。保留所有cookie会很好,但是实际上我唯一关心的是会话cookie。 使用java.net,似乎首选的方法是使用java.net.CookieHandler(抽象基类)和java.net.CookieManager(具体实现)。Android具有java.net.CookieHandler,但似乎没有java.net.CookieManager。 我可以通过检查http标头来手工编写所有代码,但是似乎必须有一种更简单的方法。 在保留Cookie的同时在Android上发出http请求的正确方法是什么?
121 java  android  http  url  cookies 

15
'依赖关系'不能应用于'(groovy.lang.Closure)'
我无法解决此错误: dependencies cannot be applied to '(groovy.lang.Closure) 这是我的gradle文件: buildscript { repositories { maven { url 'http://download.crashlytics.com/maven' } } dependencies { classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+' } } apply plugin: 'android' apply plugin: 'crashlytics' repositories { maven { url 'http://download.crashlytics.com/maven' } } dependencies { compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar') compile fileTree(dir: 'libs', include: '*.jar') …
121 android  groovy  gradle 

9
在使用Android调试桥安装应用程序时,是否有任何方法可以忽略INSTALL_FAILED_VERSION_DOWNGRADE?
似乎最新的Android 4.2在尝试安装较低版本的APK时在安装时引入了此错误情况。在以前的Android版本中,只需通过即可安装较旧的APK adb install -r <link to APK>。出于调试目的,我经常需要重新测试较旧的APK;并且该-r标志将替换旧版Android中的旧版。有一种解决方法在这里忽略[INSTALL_FAILED_VERSION_DOWNGRADE]吗?
121 android  install  adb 

9
如何以编程方式更改ActionBar中的MenuItem图标
如何以编程方式更改ActionBar中的MenuItem图标?我尝试使用 MenuItem menuItem = (MenuItem)findViewById(R.id.action_settings); menuItem.setIcon(getResources().getDrawable(R.drawable.ic_launcher)) 但这不起作用。这是我的代码: 主要活动 package com.test; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; public class MainActivity extends ActionBarActivity { private Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) …

12
ListView内的可聚焦EditText
到目前为止,我已经花了大约6个小时来做​​这件事,除了遇到障碍之外,什么都没有。通常的前提是,ListView(无论是由适配器生成的还是作为标题视图添加的)行中都包含一个EditText小部件和一个行Button。我想要做的就是能够使用慢进/箭头,将选择器导航到正常的单个项目,但是当我到达特定的行时-即使必须明确标识该行-也可以将焦点一个孩子,我希望那个孩子能集中注意力,而不是用选择器指明位置。 我尝试了许多可能性,但到目前为止还没有运气。 布局: <ListView android:id="@android:id/list" android:layout_height="fill_parent" android:layout_width="fill_parent" /> 标题视图: EditText view = new EditText(this); listView.addHeaderView(view, null, true); 假设适配器中还有其他项目,使用箭头键将按预期在列表中上/下移动选择;但是当到达标题行时,它也会与选择器一起显示,并且无法集中到EditText使用慢跑球。注意:点按EditText 会把它聚焦在该点上,但是这取决于触摸屏,这不是必须的。 ListView在这方面显然有两种模式: 1 setItemsCanFocus(true).:从不显示选择器,但是EditText使用箭头时可以获取焦点。焦点搜索算法很难预测,并且没有视觉反馈(在任何行上:是否有可聚焦的子对象)都没有选择哪个项目,这两者都可以为用户带来意想不到的体验。 2 setItemsCanFocus(false).:选择器始终以非触摸模式绘制,EditText即使单击它也永远不会获得焦点。 更糟的是,调用editTextView.requestFocus()返回true,但实际上并没有给予EditText焦点。 我所设想的基本上是1和2的混合形式,而不是列表设置(如果所有项目都可聚焦),我想为列表中的单个项目设置聚焦性,以便选择器从选择整个行用于非焦点项目,并遍历焦点树以查找包含可焦点子项的项目。 有参加者吗?


11
文字大小和不同的Android屏幕大小
我知道,已经讨论过1000次了,但是我无法针对不同的屏幕尺寸调整文本大小。我尝试在自定义样式中将“ sp”用作尺寸单位: <style name="CustumButtonStyle" parent="@android:style/Widget.Button"> ... <item name="android:textSize">30sp</item> ... </style> 在2.7 QVGA中看起来不错: 但是在7in WSVGA中,它看起来像这样: 我试图同时使用'sp'和'dp'并获得相同的结果。 您能否解释一下如何使这些按钮在任何屏幕上看起来都一样? 完整的自定义按钮样式 <style name="CustumButtonStyle" parent="@android:style/Widget.Button"> <item name="android:background">@drawable/custom_button</item> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_margin">3dp</item> <item name="android:textColor">#ffffff</item> <item name="android:gravity">center</item> <item name="android:textSize">30sp</item> <item name="android:textStyle">bold</item> <item name="android:shadowColor">#000000</item> <item name="android:shadowDx">1</item> <item name="android:shadowDy">1</item> <item name="android:shadowRadius">2</item> </style> 在我的应用主题中 <item name="android:buttonStyle">@style/CustumButtonStyle</item> 这是我的布局: <RelativeLayout …


16
在显示对话框时,我得到“ onSaveInstanceState之后无法执行此操作”
一些用户正在报告,如果他们使用通知栏中的快速操作,则他们将被强制关闭。 我在通知中显示了一个快速操作,该通知调用了“ TestDialog”类。在按下“ snooze”按钮后的TestDialog类中,我将显示SnoozeDialog。 private View.OnClickListener btnSnoozeOnClick() { return new View.OnClickListener() { public void onClick(View v) { showSnoozeDialog(); } }; } private void showSnoozeDialog() { FragmentManager fm = getSupportFragmentManager(); SnoozeDialog snoozeDialog = new SnoozeDialog(); snoozeDialog.show(fm, "snooze_dialog"); } 错误是 *IllegalStateException: Can not perform this action after onSaveInstanceState*. 引发IllegarStateException的代码行是: snoozeDialog.show(fm, "snooze_dialog"); 该类扩展了“ …
121 android  dialog  fragment 

10
如何检查APK是否已签名或“调试建立”?
据我所知,在Android中“发布版本”是签名的APK。如何从代码中检查它或Eclipse是否有某种秘密定义? 我需要它来调试从Web服务数据填充ListView项(不,logcat不是一个选项)。 我的想法: 应用程序的android:debuggable,但由于某种原因看起来不可靠。 硬编码设备ID不是一个好主意,因为我正在使用同一设备来测试签名的APK。 在代码中的某处使用手动标记?有道理,但肯定会忘记更改,而且所有程序员都懒惰。

4
区别以及何时使用getApplication(),getApplicationContext(),getBaseContext()和someClass.this
我是新来的Android和我想明白之间的差别getApplication(),getApplicationContext()getBaseContext(),getContext()以及someClass.this特别是当使用这些方法在下面的代码行: 当我敬酒时,这些和在什么情况下使用它们有什么区别? Toast.makeText(LoginActivity.this, "LogIn successful", Toast.LENGTH_SHORT).show(); Toast.makeText(getApplication(), "LogIn successful", Toast.LENGTH_SHORT).show(); Toast.makeText(getApplicationContext(), "LogIn successful", Toast.LENGTH_SHORT).show(); Toast.makeText(getBaseContext(), "LogIn successful", Toast.LENGTH_SHORT).show(); 与意图相同: Intent intent = new Intent(getApplicationContext(), LoginActivity.class); Intent intent = new Intent(MenuPagina., LoginActivity.class); Intent intent = new Intent(getBaseContext(), LoginActivity.class); Intent intent = new Intent(getApplication(), LoginActivity.class);

11
当活动以不同的Intent启动时,如何防止活动的多个实例
使用Google Play商店应用(以前称为Android Market)上的“打开”按钮启动应用时,我遇到了一个错误。从Play商店启动它的方式似乎与Intent从手机的应用程序图标菜单中启动方式不同。这导致启动同一活动的多个副本,而这些副本彼此冲突。 例如,如果我的应用程序由“活动” ABC组成,则此问题可能会导致一堆ABCA。 我尝试android:launchMode="singleTask"在所有Activity上使用来解决此问题,但是每当我按下HOME按钮时,都会清除将Activity堆栈清除为root的不良副作用。 预期的行为是: ABC-> HOME->恢复应用程序时,我需要:ABC-> HOME-> ABC 有没有一种好的方法可以防止启动多个相同类型的活动,而无需在使用HOME按钮时重置为根活动?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.