小编Zha*_*hao的帖子

带有Nougat的java.lang.NullPointerException

我的应用程序一直在通过各种Android版本很好地哼唱.我有用户在Android 4.3,5.0,5.1和6.0上运行它没有任何问题.但是,使用S7 Edge的用户刚刚使用Android 7.0进行了更新,当文本粘贴到EditText字段时,应用程序崩溃(这是您使用此应用程序的第一个也是唯一的事情 - 它开始将文本粘贴到一个框中,然后应用程序解析文本).

我已经查看了Null Pointer Exceptions上的许多线程,我查看了Editor.java的源代码,但没有什么是显而易见的.下面的堆栈跟踪显示我的代码没有问题.他们用7.0改变了什么可能导致这个?

java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.widget.Editor$SelectionModifierCursorController.isDragAcceleratorActive()' on a null object reference
at android.widget.Editor.updateFloatingToolbarVisibility(Editor.java:1520)
at android.widget.Editor.onTouchEvent(Editor.java:1475)
at android.widget.TextView.onTouchEvent(TextView.java:10024)
at android.view.View.dispatchTouchEvent(View.java:10725)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2865)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2550)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2865)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2550)
at android.widget.ScrollView.dispatchTouchEvent(ScrollView.java:738)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2865)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2550)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2865)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2550)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2865)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2550)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:505)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1863)
at android.app.Activity.dispatchTouchEvent(Activity.java:3226)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:467)
at android.view.View.dispatchPointerEvent(View.java:10954)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5051)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4908)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4439)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4492)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4458)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4591)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4466)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4648)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4439) …
Run Code Online (Sandbox Code Playgroud)

nullpointerexception samsung-mobile android-7.0-nougat

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

HttpClient 4.3.5 ConnectionRequestTimeOut与ConnectTimeout for 4.0中的HttpConnectionParams.setConnectionTimeout

我试图将我们的HttpClient依赖从4.0.1升级到4.3.5.并且在新lib中设置连接超时时感到困惑.对于以下代码:

HttpClient httpClient = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(httpClient.getParams(), 300);
Run Code Online (Sandbox Code Playgroud)

它将替换为以下代码:

RequestConfig config = RequestConfig.custom().setConnectTimeout(300).build();
HttpClient httpClient = HttpClientBuilder.create().setDefaultRequestConfig(config).build();
Run Code Online (Sandbox Code Playgroud)

但是,我不确定是否应该使用setConnectTimeoutsetConnectionRequestTimeout,因为我不熟悉HttpClient.在我看来,我应该在源代码中使用基于java doc的setConnectionTimeout.有人可以确认一下吗?提前致谢.

https://svn.apache.org/repos/asf/httpcomponents/httpclient/tags/4.3.3/httpclient/src/main/java/org/apache/http/client/config/RequestConfig.java

/**
 * Returns the timeout in milliseconds used when requesting a connection
 * from the connection manager. A timeout value of zero is interpreted
 * as an infinite timeout.
 * <p/>
 * A timeout value of zero is interpreted as an infinite timeout.
 * A negative value is interpreted as undefined (system default).
 * …
Run Code Online (Sandbox Code Playgroud)

apache-httpclient-4.x

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

UIImageView在UICollectionViewCell子类中显示超出范围的图像

我必须创建一个自定义UICollectionViewCell来显示图像的图像和名称.在图像的顶部,有一个帧图像,其宽度和高度比图像大2个像素.但是,无论我做什么,图像似乎都比帧图像大.我为表格视图做了同样的事情,它完美无缺.

这是代码:

//GridCell.h

@interface GridCell : UICollectionViewCell
@property(nonatomic, strong) UILabel *lblName;
@property(nonatomic, strong) UIImageView *image;
@end

//GridCell.m

#import "GridCell.h"

@implementation GridCell

@synthesize image, lblName;

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code

        UIImage *bg = [UIImage imageNamed:@"borderUIimgLg.png"];

        UIImageView *bgImage = [[UIImageView alloc] initWithFrame:CGRectMake(0.0, 0.0, frame.size.width, frame.size.width)];
        [bgImage setImage:bg];
        [bgImage setContentMode:UIViewContentModeScaleAspectFill];
         NSLog(@"BG Image size %f, %f", bgImage.frame.size.width, bgImage.frame.size.height);


        UIImageView *contentImage = [[UIImageView alloc] initWithFrame:CGRectMake(2.0, 2.0, frame.size.width-4.0, frame.size.width-4.0)];
        [contentImage setContentMode:UIViewContentModeScaleAspectFill];
        [contentImage setClipsToBounds:YES];
        self.image = contentImage;

        [self.contentView addSubview:self.image]; …
Run Code Online (Sandbox Code Playgroud)

objective-c uiimageview uiimage ios6 uicollectionview

6
推荐指数
2
解决办法
6457
查看次数

iOS JavascriptCore 异常详细的堆栈跟踪信息

iOS中的异常堆栈跟踪似乎只包含方法名称或存在错误。下面是我在 JSContext 中处理异常的代码。

context.exceptionHandler = { (ctx: JSContext!, value: JSValue!) in
    // type of String
    let stacktrace = value.objectForKeyedSubscript("stack").toString()
    // type of Number
    let lineNumber = value.objectForKeyedSubscript("line")
    // type of Number
    let column = value.objectForKeyedSubscript("column")
    let moreInfo = "in method \(stacktrace)Line number in file: \(lineNumber), column: \(column)"
    Logger.error("JS ERROR: \(value) \(moreInfo)")
}
Run Code Online (Sandbox Code Playgroud)

我得到了如下日志

ERROR : JSContextRenderer.swift:308 : setupContext : JS ERROR: Error in method clearBackground
Line number in file: 162, column: 12"
Run Code Online (Sandbox Code Playgroud)

请注意,在“clearBackground”名称之后有一个新行,我认为那里可能有更多信息。

有类似经历的人可以证实一下吗?任何帮助表示赞赏。谢谢。

javascriptcore swift

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