Articles of android 2.2 froyo

Android ArrayAdapter.Add方法不起作用

ArrayAdapter.add()方法对我不起作用。 我正在使用Eclipse Helios 3.6和ADT插件,Target Source是一个Froyo 2.2模拟器和2.2 HTC Evo 4g。 这是我的java类 import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; public class Main extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); String[] entries = {“List Item A”, “List Item B”}; ArrayAdapter arrAdapt=new ArrayAdapter(this, R.layout.list_item, entries); arrAdapt.setNotifyOnChange(true); arrAdapt.add(“List Item C”); } } 这是列表项的布局(list_item.xml) android:padding=”10dp” android:textSize=”12sp” 它给了我和LogCat中的错误 引起:java.util.AbstractList.add(AbstractList.java:411)中的java.lang.UnsupportedOperationException,位于android.widget.ArrayAdapter.add(ArrayAdapter.java)java.util.AbstractList.add(AbstractList.java:432) […]

替代api级别8中的setAlpha

我正在开发一个可以在Froyo和JellyBean上运行的应用程序。 我有一个扩展PageTransformer的类,如下所示: import android.support.v4.view.ViewPager.PageTransformer; import android.view.View; public class ZoomOutPageTransformer implements PageTransformer { private static float MIN_SCALE = 0.85f; private static float MIN_ALPHA = 0.5f; public void transformPage(View view, float position) { int pageWidth = view.getWidth(); int pageHeight = view.getHeight(); if (position < -1) { view.setAlpha(0); } else if (position <= 1) { float scaleFactor = […]

替换片段和方向更改

我正在开发一个针对2.x和3.0设备的Android应用程序,因此我正在使用compatiblebilty API。 我在Android 2.0上测试。 我正在尝试将显示的片段替换为另一个片段(搜索结果与搜索结果一起),当显示第二个(结果)片段时,我遇到了方向更改的崩溃。 基本上,我有一个活动,包括在布局xml中定义的片段 第一个片段(SearchFormFragment)显示为默认值。 当用户点击“搜索”按钮时,我将SearchFormFragment替换为SearchResultsFragment,后者运行AsyncTask(这就是我想保留它的原因) // Show the search results fragment SearchResultsFragment newSearch = new SearchResultsFragment(from, to, when); newSearch.setRetainInstance(true); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out); transaction.replace(R.id.search_form_fragment, newSearch); transaction.addToBackStack(null); transaction.commit(); 但是,当显示SearchFormFragment并更改方向时,我的应用程序崩溃了 ERROR/AndroidRuntime(334): FATAL EXCEPTION: main ERROR/AndroidRuntime(334): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.prevoz.android/org.prevoz.android.search.MainActivity}: android.view.InflateException: Binary XML file line #13: Error inflating class fragment ERROR/AndroidRuntime(334): […]

TextView中的多重对齐?

我有一个像下面的TextView。 我使用此代码为文本的一部分设置灰色。 // Prepare result text. final String resultText = text + “\n\n” + dictionaryName; final SpannableString styledResultText = new SpannableString(resultText); styledResultText.setSpan(new ForegroundColorSpan(Color.GRAY), text.length() + 2, text.length() + 2 + dictionaryName.length(), 0); resultTextView.setText(styledResultText); 现在我想为它设置对齐。 怎么做? Android没有任何span类用于对齐。 我找不到像“AlignmentSpan”这样的东西。

在Android 2.2 + ViewPager和Fragments中实现TabHost使用的教程

像我这样的人的简短教程,他们在find实现TabHost和ViewPager的方法时遇到了一些麻烦,包括用手指翻页和选项卡点击来更改页面。 显示的解决方案与Android 2.2版本兼容。 它包括选项卡初始化,与选项卡连接的ViewPager和页面滚动管理。 它的主要特点是优化早期版本的Android(FROYO,API版本8,Android 2.2)以及用于不同目的的简单实现。 我希望它会有用。

当我的活动不可见时,如何在Android WebView中暂停Flash内容?

我正在尝试使用WebView在我的活动中显示Flash内容。 一切都运行良好,但当用户点击主键将活动放入后台时,Flash内容会继续运行(声音继续播放等) 我注意到Android浏览器和Dolphin浏览器似乎都避免了这个问题,并且当浏览活动放到后台时正确暂停Flash内容。 理想情况下,我想要一个解决方案,如果活动正在完成,则完全杀死WebView,但是暂停它(基本上复制浏览器的默认行为) 这是一个简单的测试,我把它放在Kongregate上,它有一些背景音乐: public class BrowserTest extends Activity { private WebView mWebView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mWebView = new WebView(this); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setPluginsEnabled(true); mWebView.loadUrl(“http://m.kongregate.com/games/Jiggmin/the-game-of-disorientation-mobile”); setContentView(mWebView); } @Override protected void onPause(){ super.onPause(); mWebView.pauseTimers(); if(isFinishing()){ mWebView.loadUrl(“about:blank”); setContentView(new FrameLayout(this)); } } @Override protected void onResume(){ super.onResume(); mWebView.resumeTimers(); } } 我看了一下股票浏览器的最新来源,似乎做了类似的事情(调用pauseTimers / resumeTimers),虽然我担心我一直在看的代码已经过时了,因为它调用的函数是don似乎不再存在了。 我确实通过使用更新计数器的简单JavaScript setInterval进行测试来validation对pauseTimers的调用是否有效。 […]

如何检查所有AsyncTasks是否完成?

我有3个AsyncTasks和1个ProgressBar 。 我希望当任何任务执行时,进度条都可见,当所有任务完成时,进度条是不可见的。 在Java中,有ExecutorService::isTerminated来检查是否所有runnables都已完成但Android没有。 更新:3个任务同时执行。 数字。

使用Android手机阅读RFID

我做了足够的研究,使用Android手机(智能手机)阅读RFID标签。 我对此的理解是,对于支持NFC的智能手机(Nexus S),可以读取RFID标签,但存在限制。 对于不支持NFC的机器人,我们需要一个RFID阅读器,我们可以使用蓝牙从Android进行通信。 我的问题是: 我们用于从Android手机(支持NFC)读取RFID标签的SDK是什么? 如果我必须使用非NFC手机阅读,是否有可用的标准阅读器提供SDK用于开发目的? 任何forms的帮助表示赞赏。

无法在$ ANDROID_AVD_HOME中findINI文件,也无法在$ HOME / .android / avd中find

当我按下AVD管理器上的开始按钮时,我无法在Android SDK上启动虚拟设备,此错误显示在我的屏幕上: Starting emulator for AVD ‘AVD_for_Galaxy_Nexus_by_Google’ PANIC: Could not find AVD_for_Galaxy_Nexus_by_Google.ini file in $ANDROID_AVD_HOME nor in $HOME/.android/avd”! 这是屏幕截图:

Android上SQLite数据库的最大大小是多少?

我有一个大小超过2.6 GiB的SQLite数据库。 (数据库包含地图。)此数据库由RMaps应用程序使用。 当以最大缩放将地图移动到某些部分时,应用程序会突然关闭。 但是,没有强制关闭消息,没有报告按钮。 所以,我有一个想法,它是由读取超出一定限制的块引起的,例如max(int)。 由于RMaps只使用简单的SQL语句,我认为问题不在于RMaps,而在于Android SQLite驱动程序。 Android上的SQLite数据库是否有大小限制? (我在Nexus One上有Froyo,但我不认为这只是Froyo的一个问题。) 日志输出: 08-14 10:24:51.689 I/ActivityManager( 81): Starting activity: Intent { act=android.intent.action.SEARCH flg=0x10000000 cmp=com.robert.maps/.MainMapActivity (has extras) } 08-14 10:25:01.879 E/AndroidRuntime(12441): FATAL EXCEPTION: pool-1-thread-2 08-14 10:25:01.879 E/AndroidRuntime(12441): android.database.sqlite.SQLiteDiskIOException: disk I/O error 08-14 10:25:01.879 E/AndroidRuntime(12441): at android.database.sqlite.SQLiteQuery.native_fill_window(Native Method) 08-14 10:25:01.879 E/AndroidRuntime(12441): at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:70) 08-14 10:25:01.879 E/AndroidRuntime(12441): at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:283) […]