标签: android-4.0-ice-cream-sandwich

处理新版Android(3.x及更高版本)中缺少的MENU按钮

我是Android <3.0中使用的菜单按钮的粉丝,因为它对我的游戏应用程序非常有用 - 它允许我采取重要但游戏玩法无关的功能(保存游戏,参考信息链接)并将其放置在它的某个地方没有弄乱主游戏界面,但仍然很容易访问(选项菜单).

这种键的使用成为3.0的问题,因为它删除了MENU按钮并用Action Bar替换它.动作栏真的不适合喜欢全屏运行的游戏,所以这真的很痛苦.没有操作栏 - 无法访问选项菜单.但是,我可能暂时忽略它,因为我在平板电脑上没有那么多用户,并且没有时间来测试它.

然而,ICS使这成为一个严重的问题,因为MENU按钮显然没有回来.现在我不仅要在平板电脑上处理这个问题,还要在手机上处理这个问题.

我对此问题的初步解决方案是在我的GUI中放置一个软按钮来替换硬菜单按钮

this.openOptionsMenu();
Run Code Online (Sandbox Code Playgroud)

一切都恢复到ICS的完美运作.

但是,这对Honeycomb不起作用.如果您没有可见的ActionBar,则调用openOptionsMenu绝对没有任何作用.

有关如何处理这个的任何想法?

  • 我想我总是可以回到使用TargetSDK <11(从而迫使ActionBar出现在平板电脑上),但据我所知,这只是将问题推向未来,我不愿意这样做.

  • 完全删除选项菜单,然后转到仅使用上下文菜单?[澄清:我的意思是,不是打开选项菜单 - 我只使用上下文菜单 - 至少现在 - 这些工作在所有设备上].

有兴趣听听其他人在整个选项菜单/ ActionBar混乱中遇到类似问题的决定.

compatibility android android-3.0-honeycomb android-4.0-ice-cream-sandwich android-4.2-jelly-bean

39
推荐指数
1
解决办法
6万
查看次数

亚行不承认我的Galaxy Nexus - Win7

我刚买了一个Galaxy Nexus,现在我遇到了问题,我的ADB不认识它.Point是我连接它时,它在我的计算机上显示为存储设备,但它没有列为ADB设备.

当我连接我的另一部手机(HTC Desire HD)时,它可以毫无问题地识别它.

有关系统和配置的一些信息:

  1. 我在Win7 Service Pack 1 64bit上
  2. Galaxy Nexus处于调试模式
  3. 设备未在ADB中显示,但Windows将其识别为Massstoragedevice
  4. Eclipse和Googlepack已更新至最新版本

android adb windows-7-x64 android-4.0-ice-cream-sandwich

38
推荐指数
4
解决办法
6万
查看次数

Android ICS上的WebView,android_assets的iframe问题

我的应用程序引擎在WebView中运行.它跨越不同的IFRAMES.主要应用程序html和iframes html都在android_assets上.在Android 3.x上没有任何问题.在Chrome浏览器等上也是如此

如果我创建了一个IFRAME(createElement - > appendChild),则会创建iframe.

当我在其中加载内容时(iframe.src ="url"<> iframe.contentWindow.location.href ="url")...它取代了主要应用程序!! (而不是加载到iframe)

已经尝试过:

  • window.setTimeout延迟加载......失败.
  • 在webview中,将X-Frame-Options = SAME_ORIGIN作为标题注入任何加载的页面 - >失败
  • 创建iframe,设置sandbox = same_origin,allow_scripts - >失败

有类似问题的人吗?或者有人可以帮助我找到有关WebView ICS错误和Honeycomb的文档吗?

还发现了许多其他奇怪的问题...... ICS真的是这个车吗?:S:S

iframe android webview android-assets android-4.0-ice-cream-sandwich

37
推荐指数
1
解决办法
5703
查看次数

在'android'包中找不到属性'parentActivityName'的资源标识符

我正在尝试从Android页面http://developer.android.com/training/basics/firstapp/starting-activity.html完成本教程 但是我Eclipse会抛出此错误:"找不到属性'parentActivityName'的资源标识符在'android'包中"我已经包含了android-support-library.

这是整个AndroidManifest.xml代码

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myfirstapp"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="11"
    android:targetSdkVersion="15" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.example.myfirstapp.DisplayMessageActivity"
        android:label="@string/title_activity_display_message" 
        android:parentActivityName="com.example.myfirstapp.MainActivity" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.myfirstapp.MainActivity" />
    </activity>
</application>
Run Code Online (Sandbox Code Playgroud)

android android-4.0-ice-cream-sandwich

37
推荐指数
2
解决办法
4万
查看次数

带有日期选择器的Android微调器,如Google Calendar应用

我正在尝试使用一个看起来像微调器的文本框来激活日期选择器对话框.这可以在Google日历应用和ICS上的通讯录应用(生日)中完成.我是否需要使用微调器,如果是这样,我如何将其输入视图更改为日期选择器?或者如果没有,我如何获得文本视图以获得通常表示微调器的小三角形?

android android-datepicker android-spinner android-4.0-ice-cream-sandwich

35
推荐指数
3
解决办法
4万
查看次数

在对话窗口外触摸时,android 4.0对话框被取消

嗨,我在ICS dialogdismissed遇到的问题就像我们点击外面的dialog窗口一样,由于这个问题我没有得到用户的任何确认.

请帮忙.

dialog android-4.0-ice-cream-sandwich

35
推荐指数
3
解决办法
3万
查看次数

问题:将大数据传递给第二个Activity

我有一个奇怪的问题.我环顾网络但没有找到答案.我还是android编程的初学者.让我们走吧:

我想做的就是用一些数据调用第二个Activity.它适用于小数据,但如果数据变大,第二个Activity将不会显示,第一个Activity将完成.这是我调用方法的代码:

Intent intent = new Intent(ActivitySearch.this,ActivityResults.class);
Bundle bundle = new Bundle();
bundle.putParcelableArrayList("data", searchList);
intent.putExtras(bundle);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

接收数据的部分并不重要.即使我不尝试读取该包,也不会调用该活动.我用以下几行测试了这个:

@Override
public void onCreate(Bundle savedInstanceState) {
Log.d("DEBUG","ActivityResult::onCreate()");
super.onCreate(savedInstanceState);
Run Code Online (Sandbox Code Playgroud)

OnCreate() 永远不会被召唤.

也许你的一个人有个主意......谢谢你的帮助!

编辑:至少我忘了:这只发生在ICS下.该应用程序就像一个姜饼和froyo的魅力.

Edit2:Logcat

10-10 14:49:46.951: D/OpenGLRenderer(21696): Flushing caches (mode 0)
10-10 14:49:47.011: V/ActivityThread(22429): com.example.amazonsearch white listed for hwui
10-10 14:49:50.821: W/IInputConnectionWrapper(21696): showStatusIcon on inactive InputConnection
Run Code Online (Sandbox Code Playgroud)

java android android-activity android-4.0-ice-cream-sandwich

35
推荐指数
2
解决办法
3万
查看次数

如何在android actionbar compat上强制溢出菜单?

Android动作栏compat
有可能吗?在较旧的设备(3.0之前版本)上,只有在按下菜单键时才显示不适合操作栏的项目,我希望这些项目在操作栏的溢出菜单中分组.

android overflow android-4.0-ice-cream-sandwich actionbarsherlock android-actionbar

34
推荐指数
3
解决办法
2万
查看次数

WebView不会在Android 4.0.x Ice Cream Sandwich中的应用程序启动时呈现本地HTML页面

我知道在这个论坛上已经以不同的格式提出了这个问题,但是到目前为止,没有一个答案 - 我接受或其他方式帮助了我.

我正在开发一个混合应用程序,它使用原生的Android,HTML和Adboe的Flex SDK(没有任何框架,如PhoneGap等,使用Android自己的WebView直接代码).

这是我面临的问题:

当应用程序启动时,首先触发flex sdk 的活动"AppEntry",它是一个空白活动,它只是设置flex SDK的上下文和初始设置.接下来,启动本机MainActivity,它使用WebView加载HTML项目.在Android 4.0.x(ICS)上,即使加载了URL,webview也会显示为空白(白色)(对于相关URL,已成功调用onPageFinished()).这是在第一次安装和启动应用程序时发生的,在停止应用程序后(通过从最近的应用程序栏中删除它),页面按预期加载.像这样重复重新启动有时会重现问题但频率不可预测.

有些事情需要考虑:

  1. 由于flex sdk约束,这些HTML文件不能直接存储在'/ assets'文件夹中,而是存储在assets文件夹中的目录结构中.

  2. 问题只发生在冰淇淋三明治上(我想知道的问题)!

我已经尝试过的东西:

  1. 硬件加速关闭(开/关无关紧要,两者都测试)

2.

WebSettings settings = webView.getSettings();        
        settings.setJavaScriptEnabled(true);
        settings.setUseWideViewPort(true);
        settings.setLoadWithOverviewMode(true);
        settings.setSupportMultipleWindows(true);
        settings.setJavaScriptCanOpenWindowsAutomatically(true);
        settings.setLoadsImagesAutomatically(true);
        settings.setDomStorageEnabled(true);
        settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
        settings.setSaveFormData(true);
        settings.setAllowFileAccess(true);
        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB){
            settings.setAllowContentAccess(true);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
                settings.setAllowFileAccessFromFileURLs(true);
                settings.setAllowUniversalAccessFromFileURLs(true);
            }
        }
        settings.setAppCacheEnabled(true);
        settings.setJavaScriptCanOpenWindowsAutomatically(true);
        settings.setLoadsImagesAutomatically(true);
        boolean enableZoom = true;
        settings.setBuiltInZoomControls(enableZoom);
        settings.setSupportZoom(enableZoom);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR_MR1) {
            initializePluginAPI(webView);
        }
        settings.setDatabaseEnabled(true);
Run Code Online (Sandbox Code Playgroud)

问题是在Play商店中删除我的应用评论评论.任何帮助或见解将不胜感激.

apache-flex android webview android-webview android-4.0-ice-cream-sandwich

34
推荐指数
1
解决办法
1200
查看次数

Android编码最佳实践/设计模式

在最近的一个问题中,我问我被引导到这个网站:http://developer.android.com/design/index.html

令人惊叹的网站,但它没有回答一个特定问题:在应用程序代码设计中应用的最佳实践/设计模式是什么?

我对MVC/MVP等进行了查找,虽然这会产生结果,但它只是关于所述模式的实际实现,而不是其他可用选项等.

我尝试反编译和分析Android安装的各种应用程序,例如Market,但我无法在Google的代码中找到结构.有没有人有关于如何以可维护,可扩展等方式设置Android应用程序的提示.我知道这些单词的广泛含义,并且它们对程序员来说纯粹是主观的,但我不能用不同的方式表达它.

我已经遇到的一个最佳实践是每个Activity有一个视图,并且在应用程序中有很多活动可以使背板正常工作,但除此之外,我不知道如何实际设置Activity本身.

java android design-patterns android-4.0-ice-cream-sandwich

30
推荐指数
3
解决办法
2万
查看次数