我试图编写一个代码,用于在出现软键盘时重新调整UI组件的大小。 当我使用adjustResize时,它调整了UI组件的大小,同时adjustPan给了我相同的输出。 我想知道它们之间的区别以及何时使用每个组件? 哪一个(adjustPan或adjustResize)适合调整UI的大小? 这是我的xml: <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" > <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:orientation="vertical" > <EditText android:id="@+id/editText5" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="45dp" android:ems="10" android:inputType="textPersonName" /> <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="40dp" android:text="My Button" /> </LinearLayout> </RelativeLayout> </ScrollView> 和清单文件: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.adjustscroll" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <application […]
我已经创build了一个SQLite数据库以编程方式扩展SQLiteOpenHelper和覆盖onCreate()的默认方式。 这样db就可以在需要的时候随时创build。 我想用一个sqlite浏览器检查我的OS X机器上的数据库文件的内容。 我知道数据库文件的名称,但我无法在设备上find它。 我已经通过USB连接到设备,并与查找器和terminal,但我找不到数据库文件。 android设备上的sqlite数据库的默认位置是什么?
我想检索来电的电话号码,并像http://blog.whitepages.com/2009/02/27/caller-id-by-whitepages-a-new-android-app-即,看跌期权-电话销售上的警报/ 你能帮我吗,因为我找不到任何有关这方面的信息。 我从哪里开始,如何获取数字? 好,所以目前我的代码如下所示。 当我拨打电话时,CustomBroadcastReceiver捕获它并打印出日志信息。 我可以从捆绑中找回电话号码。 但! 我无法使CustomPhoneStateListener工作。 正如你所看到的,我已经将自定义电话状态监听器注册到接收器,但日志消息永远不会从CustomPhoneStateListener类打印出来。 我在这里错过了什么? 我的想法是否正确? <receiver android:name=".CustomBroadcastReceiver"> <intent-filter> <action android:name="android.intent.action.PHONE_STATE" /> </intent-filter> </receiver> </application> <uses-sdk android:minSdkVersion="5" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> public class CustomPhoneStateListener extends PhoneStateListener { private static final String TAG = "CustomPhoneStateListener"; public void onCallStateChange(int state, String incomingNumber){ Log.v(TAG, "WE ARE INSIDE!!!!!!!!!!!"); […]
如何检测editText的删除(backspace)键事件? 我试过使用TextWatcher,但是当editText为空时,当我按下删除键时,什么都不会发生。 即使没有文字,我也想检测删除键是否为editText。
我正试图从画廊获得图像。 Intent intent = new Intent(); intent.setType("image/*"); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(Intent.createChooser(intent, "Select picture"), resultCode ); 我从这个活动回来后,我有一个数据,其中包含Uri。 看起来像: content://media/externalhttp://img.dovov.com1 我怎么能把这个path转换成真正的path(就像' /sdcard/image.png ')? 谢谢
我试图检测一个新的应用程序正在安装,但只有当我的应用程序正在运行。 我设法通过制作一个BroadcastReceiver并在AndroidManifest文件中激活它来检测应用程序的安装,但即使我的应用程序已closures,这也会检测到。 所以这就是为什么我需要手动激活和停用broadcastreveiver。 要做到这一点,我有这样的代码: br = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Log.i("Enter", "Enters here"); Toast.makeText(context, "App Installed!!!!.", Toast.LENGTH_LONG).show(); } }; IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED); intentFilter.addAction(Intent.ACTION_PACKAGE_INSTALL); registerReceiver(br, intentFilter); 这应该让一个新的应用程序安装时敬酒。 但可悲的是,事实并非如此。 它不会在onReceive方法中input。 任何帮助表示赞赏。
如上所述,Android M将不支持Apache HTTP API。 文档声明: 改用HttpURLConnection类。 要么 要继续使用Apache HTTP API,必须首先在build.gradle文件中声明以下编译时间依赖项: android {useLibrary'org.apache.http.legacy'} 我把我的项目的HttpClient的使用大部分转换为HttpURLConnection,但是,我仍然需要在几个区域使用HttpClient。 因此,我试图声明“org.apache.http.legacy”作为编译时依赖项,但是在build.gradle中得到一个错误: Gradle DSL方法未find:'useLibrary()' 我的问题是:我如何在我的项目中声明“org.apache.http.legacy”作为编译时间依赖项? 任何帮助深表感谢。 谢谢
我在Android中使用ScrollView ,并且ScrollView的可见部分与Scrollview其中一个单元格的大小相同。 每个“细胞”是相同的高度。 所以我想要做的是在ScrollView被滚动后捕捉到位。 目前,我正在检测用户何时触摸了ScrollView ,何时开始滚动并从那里开始工作,但是它却非常麻烦。 当用户只是轻弹它并滚动然后减速时,它也需要工作。 在iPhone上有一个类似didDecelerate的function,在ScrollView完成滚动时,我可以做任何我想要的代码。 Android有这样的事情吗? 还是有一些代码,我可以看看找出一个更好的方法呢? 我查看了Android文档,找不到像这样的东西。
我有一个ListView应该在其行中具有以下布局: HEADER Text HEADER应该是静态的,但是Text每隔几秒就会改变一次。 我通过填充一个String[] array实现它,将其传递给ArrayAdapter并在每次数据更改时进行设置: data_array = populateString(); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, data_array); listView.setAdapter(adapter); 我的问题是,我不知道如何显示上述格式的数据。 提前致谢。
有一个简单的方法来使用自定义图像的checkbox? 我正在寻找复制gmail的“主演”行为。 所以我想有一个checkbox,当选中时,是一个充满了明星。 而未经检查的是一颗空洞的明星。 我必须使用imageview并自己做自己的逻辑吗?