Articles of android

用于小部件更新的RemoteViews超出最大位图内存使用错误

我有一个小部件,它parsingXML feed,并显示它的标题和图像。在这个小部件中,我使用了一个定期更改内容(即标题和图像)的服务。为此,我使用timer类。当我们运行这个小部件时,一些内容显示没有任何问题,但在某些时候它强制closures,并显示错误,如“小部件更新RemoteViews超过最大位图内存使用(使用:2465280最大:2304000)总内存不能超过填写设备的屏幕一旦”。 请有人帮我解决这个问题…在此先感谢 这是我的AppwidgetProvider => public class myappwidgetprovider extends AppWidgetProvider { public static String urls="http://www.abc.com/en/rssfeeds/9/latest/rss.xml"; // XML node keys static final String KEY_HEAD = "item"; // parent node //static final String KEY_TITLE = "title"; static final String KEY_DATE = "pubDate"; public static String headflag="english"; public static String[] Title; public static String[] Description; public static String[] […]

Android 4.2中的操作栏图标大小

Android 4.2中的操作栏图标大小是否更改? 我有一个120x48px的HDPI图标,在Android 4.1及以下版本中完美呈现。 它仍然是。 但是,在任何4.2设备上,它都被压制成适合我所能看到的48×48像素。 或类似的东西; 这绝对是一个广场。 有任何想法吗 ? 谢谢 !

Android 4.2 RadioButton android:drawableLeft bug?

当使用android:drawableLeft时,Android 4.2不会正确显示RadioButton。 drawableRight是可以的。 左侧的绘图与单选buttongraphics重叠。 至lessAndroid 2.2-4.1似乎可以用drawableLeft。 你知道这个解决方法吗? 以编程方式设置drawableLeft并不能解决这个问题。 4.2 Android的问题 4.1 Android正确呈现(至less也是Android 2.2-4.0也正确渲染) Android的XML布局代码为: <RadioButton android:id="@+id/radio_cloud_dropbox" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="10dp" android:drawableLeft="@drawable/dropbox_logo" android:checked="true" android:text="@string/lbl_cloud_dropbox" />

显示ActionBarSherlock SearchView总是展开

我需要显示SearchView总是扩展和一个更多的button,在ActionBar中给予用户快速访问searchstringsearch活动。 我有我的活动菜单布局: <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/action_search" android:title="@string/action_search" android:icon="@drawable/ic_action_search" android:showAsAction="always" android:actionViewClass="com.actionbarsherlock.widget.SearchView"/> <item android:id="@+id/action_configure" android:title="@string/action_configure" android:icon="@android:drawable/ic_menu_preferences" android:showAsAction="always" /> </menu> 而在search活动类我configurationActionBar如下: @Override public boolean onCreateOptionsMenu(Menu menu) { getSupportMenuInflater().inflate(R.menu.search, menu); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); SearchView searchView = (SearchView)menu.findItem(R.id.action_search).getActionView(); searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); searchView.setIconifiedByDefault(false); searchView.setSubmitButtonEnabled(false); return true; } 问题是,如果我做searchView.setIconifiedByDefault(false); 我看到这张照片: 你可以注意到没有第二个菜单项。 在这里,如果我设置了android:showAsAction =“always | collapseActionView”,默认情况下会崩溃,但现在我可以看到第二个项目: 在上面的图片我已经按下search图标 有两个问题我不明白: 我如何总是显示两个元素:扩展search视图和configuration操作的图标? 我如何摆脱这个丑陋的第二个search图标?

在Android Viewpager中更改页面标题

我有一个ViewPager ,我正在使用getPageTitle方法来获取当前页面的标题。 这里是适配器代码: @Override public Fragment getItem(int i) { details = productData.get(i); Fragment fragment = new ProductViewFragment(); Bundle args = new Bundle(); args.putInt(ProductViewFragment.ARG_SECTION_NUMBER, i + 1); fragment.setArguments(args); return fragment; } @Override public int getCount() { return productData.size(); } public CharSequence getPageTitle(int position) { return (position+1)+" of "+myData.size(); } 现在我想更新上一​​个和下一个片段的页面标题。 我想把它们命名为“上一个”和“下一个”。 而且它应该在后续页面上dynamic更新。 我能够获得当前页面的标题号码。 例如,当我查看第五个片段时,当前片段将正确显示标题。 在ViewPager的两个angular落,它在左边和下一个页面标题号码的右边显示了前一页的标题号码。 现在,我希望页面标题的左侧是“前一个”,右侧是“下一个”,类似于Gmail应用程序,以及它如何在ViewPager中显示邮件数量。 […]

getExternalCacheDir()如何在Android上工作?

据我所知,我们将经常访问的对象caching在比普通磁盘读取更容易访问的内存段中。 getExternalCacheDir() ,而不是getCacheDir()指向外部文件系统 – 在我看来,作为一个正常的getExternalFilesDir() 。 Android如何优化对ExternalCacheDir的访问? 是不是像Linux上的“交换”空间?

Android:蓝牙无法获取端口号

我遇到了一个问题,在我的应用程序中使用蓝牙。 似乎在创build了28个BluetoothSocket / BluetoothServerSockets之后,所有的端口都被占用了。 不需要同时打开sockets,因为启用了蓝牙function,sockets只有28个。 这可以使用Android示例中提供的BluetoothChat示例进行重现。 只需打开和closures应用程序15次(应用程序每次创build2个套接字)。 在第15次,它会崩溃,并将继续崩溃,直到您禁用,然后重新启用蓝牙: 12-06 18:43:58.177: E/BluetoothSocket(18530): bindListen, fail to get port number, exception: java.io.IOException: read failed, socket might closed, read ret: -1 12-06 18:43:58.193: E/BluetoothChatService(18530): Socket Type: Insecurelisten() failed 12-06 18:43:58.193: E/BluetoothChatService(18530): java.io.IOException: Error: -1 12-06 18:43:58.193: E/BluetoothChatService(18530): at android.bluetooth.BluetoothAdapter.createNewRfcommSocketAndRecord(BluetoothAdapter.java:1035) 12-06 18:43:58.193: E/BluetoothChatService(18530): at android.bluetooth.BluetoothAdapter.listenUsingInsecureRfcommWithServiceRecord(BluetoothAdapter.java:982) 12-06 18:43:58.193: E/BluetoothChatService(18530): at com.example.android.BluetoothChat.BluetoothChatService$AcceptThread.<init>(BluetoothChatService.java:280) […]

重设偏好的默认值

我正在使用CheckBoxPreference设置屏幕。 XML是: <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > <CheckBoxPreference android:key="includeAddress" android:title="Include Address" android:summary="" android:defaultValue="true" /> <CheckBoxPreference android:key="rememberName" android:title="Remeber Name" android:summary="" android:defaultValue="false" /> </PreferenceScreen> 我在应用程序中更改值。 一旦用户注销,它必须被设置为在xml中定义的默认值。 但是,这似乎并不奏效。 他们保留我最后select的那些价值。 读过Android文档后,我发现这个: PreferenceManager.setDefaultValues(getApplicationContext(), R.xml.preference_settings, true); 但是很难做到这一点! 尝试与SharedPreferences其他方式。 SharedPreferences preferences = getParent().getSharedPreferences("preference_settings", MODE_PRIVATE); SharedPreferences.Editor editor = preferences.edit(); editor.clear(); editor.commit(); 它也没有工作! 我错过了什么吗? 我怎样才能将偏好设置为在XML中定义的默认值? 提前致谢!

Android 4.1.2默认浏览器 – 渲染问题与禁用的input字段

这似乎像一些版本的默认Android浏览器有渲染问题。 如果我创build了一个页面,我有某种input字段和一个button,当我禁用其他input字段时,button会显示为灰色(除非这是在页面加载完成,你必须点击/缩放一点点让浏览器重新渲染)。 有趣的是,它不会将禁用的STYLE应用于button,而只是将其灰色化。 这里是一个例子。 链接到编辑器jsfiddle 链接到embedded式jsfiddle CSS: ul { list-style-type:none; } .xxx { background: blue; color: white; } .xxx:disabled { background-color: red; } HTML: <div id="root"> <ul> <li> <input name="x" id="enable" class="x" type="radio">Enable</input> </li> <li> <input name="x" id="disable" class="x" type="radio">Disable</input> </li> </ul> <input type="button" class="xxx" value="Button"></input> </div> JS: $(function() { $('.x:eq(0)').prop('disabled', true); }); 注意事项: 该button不被禁用。 […]

SQLiteDatabase'不实现接口'

当我使用SQLiteDatabase作为Closeable时得到这个错误 我有一个示例项目来重新创build它: https://github.com/blundell/SQLDatabaseError 使用扩展SQLiteOpenHelper的类: public class DatabaseHelper extends SQLiteOpenHelper { …. public void openAndCloseDatabase() { SQLiteDatabase database = getWritableDatabase(); close(database); } private void close(Closeable database) { try { if (database != null) { database.close(); } } catch (Exception e) { Log.e("Error", "Oh no!", e); } } } 堆栈跟踪: 12-14 12:23:43.719: E/AndroidRuntime(5179): FATAL EXCEPTION: main 12-14 […]