标签: android-4.2-jelly-bean

Android:Android 4.1模拟器从DatePicker对话框调用onDateSet两次

我的应用程序在我的Android 2.2模拟器上完美运行.然后我决定在Android 4.1模拟器上进行测试.该DatePickerDialog看起来有点不同,因为当我按下"完成"某些原因,onDateSet()听众被调用两次,导致我的应用程序的问题.

我知道这一点,因为每当我点击"完成"时,代码中显示的日志就打印了两次

mDateSetListener = new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            Log.v("onDateSet", "ENTERED");
            //rest of code...
    }};
Run Code Online (Sandbox Code Playgroud)

Android 2.2 DatePicker

使用Android 2.2 DatePicker

Android 4.1 DatePicker

不能使用Android 4.1 DatePicker

android datepicker emulation android-4.2-jelly-bean

18
推荐指数
1
解决办法
7321
查看次数

Jelly Bean中的自定义可扩展通知(4.1)

Jelly Bean添加了对可扩展状态通知的支持.根据http://developer.android.com/about/versions/jelly-bean.html:

除了模板化样式,您还可以使用任何远程视图创建自己的通知样式.

怎么办?我相信你需要创建一个自定义的Notification.Style.这是一个抽象类,所以我需要扩展它.我无法找到有关哪些部分需要扩展的文档.

这个SO问题给出了如何使用notificaiton.builder进行基本通知的一个很好的例子,我将此作为起点.添加

.setContent(new RemoteViews(getPackageName(), R.layout.notification)) 
Run Code Online (Sandbox Code Playgroud)

为基本通知添加自定义视图,但它不可扩展.

android android-notifications android-4.2-jelly-bean

18
推荐指数
2
解决办法
1万
查看次数

替代api级别8中的setAlpha

我工作的一个应用程序,它可以运行在FroyoJellyBean.我有一个扩展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 = Math.max(MIN_SCALE, 1 - Math.abs(position));
            float vertMargin = pageHeight * (1 - scaleFactor) / 2;
            float horzMargin = pageWidth * (1 - scaleFactor) …
Run Code Online (Sandbox Code Playgroud)

android android-2.2-froyo android-4.2-jelly-bean

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

如何正确更新api 11的通知?

  • 之前Notification.Builder进入了存在更新的方式通知了已被通知栏是调用setLatestEventInfo(),然后发送通知回通过NotificationManager.notify()与第一相匹配的ID调用notify()你做电话.

  • 现在setLatestEventInfo()不推荐使用消息:Use Notification.Builder而是.但我找不到任何有关如何正确更新通知的文档Notification.Builder.

  • 您是否只是想在Notification每次需要更新通知时重新创建新实例?然后简单地将其传递给NotificationManager.notify()您之前使用的ID?

  • 它似乎工作,但我想看看是否有人有任何官方验证,这是新的"这样做的方式"?

我之所以要问这是因为在Android 4.1.1 Jelly Bean,每次notify()调用通知都会闪现.更新进度条时,setProgress()这看起来非常糟糕,并且很难点击通知.4.1或以前的版本不是这种情况.因此,我想确保在提交错误之前正确执行此操作.

android android-notifications android-4.2-jelly-bean

17
推荐指数
1
解决办法
4501
查看次数

android:targetSdkVersion为16时的操作栏行为

我正在尝试使用选项卡作为导航选项来实现操作栏.为此,我选择"New Android App"向导的"New Blank Activity"部分中的"Tabs + Swipe"选项,如下所示.

Tab + Swipe向导选项

现在,在android清单中,何时

android:targetSdkVersion="15"
Run Code Online (Sandbox Code Playgroud)

这是默认值,操作栏在Nexus 7/Nexus 7仿真器上看起来像这样,这是应用程序的理想外观

默认行为

现在,当我将android清单中的那一行更改为

android:targetSdkVersion="16"
Run Code Online (Sandbox Code Playgroud)

操作栏的外观更改为此

android之后的行为:targetSdkVersion =

默认外观对于任何版本的android都是16但是,任何人都可以解释为什么当targetSdkVersion设置为16时,操作栏的外观会突然改变?

以上内容可在仿真器和真实连接7中重现.

全屏抓取

正常: http ://i.stack.imgur.com/VsBA2.png

在android:targetSdkVersion ="16"之后: http ://i.stack.imgur.com/OM6Y4.png

更新 - 2013年3月10日:切换到列表导航模式(而不是选项卡)以启用移动到android:targetSdkVersion = 17

android android-manifest android-layout android-actionbar android-4.2-jelly-bean

17
推荐指数
1
解决办法
1538
查看次数

requestFocus for TextView on Jelly Bean slow

我正在开发一个具有4个文本字段的应用程序,用于输入数据,当我将焦点从一个移动到另一个时,我遇到了性能问题.当一个字段输入一个字符时,我使用addTextChangedListener监视文本并将焦点移动到下一个文本字段.这在4.1.1之前的android版本上工作正常,但是自从4.1.1测试后,当你在焦点出现在下一个字段之前按一个键时会有明显的延迟.这意味着如果用户快速键入,则按键可能会丢失.

我有一个使用以下代码的简单应用程序

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    one = (EditText)findViewById(R.id.editText1);
    two = (EditText)findViewById(R.id.editText2);

    one.addTextChangedListener(new TextWatcher() {


        @Override
        public void afterTextChanged(Editable s) {
            two.requestFocus();

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before,
                int count) {
            // TODO Auto-generated method stub

        }
    });
}
Run Code Online (Sandbox Code Playgroud)

这突出了这个问题.在基于4.0.4的设备上运行时一切正常,但在4.1.1上移动焦点需要一段时间.

我已经在2个不同的三星Galaxy s3上用4.0.4测试了这个,用4.1.1测试了一个.

有没有人见过这个?

非常感谢

保罗

performance android android-4.2-jelly-bean

17
推荐指数
1
解决办法
1333
查看次数

Android 4.2开发人员设置仍然不可用

开发者网站上规定的方法不起作用时,如何访问Android 4.2的开发人员设置?

我按照Nexus 7平板电脑上的说明进行操作.我转到设置 > 关于平板电脑,滚动到屏幕底部,然后单击Build Number 7次.我收到了消息"恭喜你,你现在是开发人员." 但显然,我还不是一个人.

我检查了"设置"并一直向下滚动到底部,但没有可用的开发者选项.我重置平板电脑并重新启动它,没有结果.当我再次点击Build Number时,它说"不需要,你已经是开发者了"."

更新:

其他可能是一个问题.有两个平板电脑用户帐户.我用来访问开发人员设置的帐户是第二个.第一个帐户可能未设置为开发人员.

android android-4.2-jelly-bean

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

在videoView:Android v 4.2.1中播放视频时出现java.lang.StringIndexOutOfBoundsException

当我在Android版本4.2.1中的videoView上播放视频时,我遇到了这个崩溃.我在Micromax Canvas A210设备上特别发现了这一点.它没有显示发生错误的任何消息.这是一个错误或应用程序中的错误吗?崩溃日志如下:

09-18 11:05:53.245: E/AndroidRuntime(2323): FATAL EXCEPTION: main
09-18 11:05:53.245: E/AndroidRuntime(2323): java.lang.StringIndexOutOfBoundsException: length=11; regionStart=0; regionLength=-1
09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.String.startEndAndLength(String.java:583)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at java.lang.String.substring(String.java:1464)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.widget.VideoView.openVideo(VideoView.java:407)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.widget.VideoView$6.surfaceCreated(VideoView.java:730)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView.updateWindow(SurfaceView.java:606)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView.access$000(SurfaceView.java:88)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.SurfaceView$3.onPreDraw(SurfaceView.java:183)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:692)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2123)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1139)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4879)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:776)
09-18 11:05:53.245: E/AndroidRuntime(2323):     at …
Run Code Online (Sandbox Code Playgroud)

android android-4.2-jelly-bean android-videoview

17
推荐指数
1
解决办法
1577
查看次数

在Windows 7上使用Jelly Bean 4.1模拟器在ADB中运行systrace工具时出错

如何运行systrace以显示其html输出?在观看Google I/O 2012谈话"For Butter or Worse"后,我无法systrace使用运行Jelly Bean 4.1的模拟器开始使用Windows 7.

我做了以下事情:

  1. 安装了Python 2.7,并将安装文件夹添加到我的PATH中
  2. 冉以下几点:C:\android-sdk\platform-tools\systrace>python systrace.py(与旧的SDK: C:\android-sdk\tools\systrace>python systrace.py)

但我在cmd中收到以下错误:

Traceback (most recent call last):
  File "systrace.py", line 212, in <module>
    main()
  File "systrace.py", line 124, in main
    ready = select.select([adb.stdout, adb.stderr], [], [adb.stdout, adb.stderr])
select.error: (10093, 'Either the application has not called WSAStartup, or WSAStartup failed')
Run Code Online (Sandbox Code Playgroud)

注意:

  • 我在模拟器中启用了跟踪: Settings > Developer Options > Enable traces
  • 我也试过Python 3.2

android adb windows-7 systrace android-4.2-jelly-bean

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

Android通知操作,无需打开应用

我想在JB中实现一个通知操作.但它不应该打开应用程序.该行为类似于Gmail应用删除通知操作.我怎样才能做到这一点?

谢谢,Shashika

notifications android android-4.2-jelly-bean

16
推荐指数
1
解决办法
2万
查看次数