小编Sol*_*dak的帖子

尝试访问Kotlin片段中的视图时出现NullPointerException

如何使用Kotlin Android扩展程序Fragment?如果我在里面使用它们onCreateView(),我得到这个NullPointerException例外:

引起:java.lang.NullPointerException:尝试在空对象引用上调用虚方法'android.view.View android.view.View.findViewById(int)'

这是片段代码:

package com.obaied.testrun.Fragment

import android.os.Bundle
import android.support.v4.app.Fragment
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.obaied.acaan.R
import kotlinx.android.synthetic.main.fragment_card_selector.*

public class CardSelectorFragment : Fragment() {
    val TAG = javaClass.canonicalName

    companion object {
        fun newInstance(): CardSelectorFragment {
            return CardSelectorFragment()
        }
    }

    override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        var rootView = inflater?.inflate(R.layout.fragment_card_selector, container, false)
        btn_K.setOnClickListener { Log.d(TAG, "onViewCreated(): hello world"); }

        return rootView
    }
}
`
Run Code Online (Sandbox Code Playgroud)

android kotlin kotlin-android-extensions

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

Android NDK:第 3 方 Java 库的静态或共享 C++ 运行时

我正在为使用 JNI 的 Android 编译第 3 方 Java 库。我阅读了有关在developer.android上添加C++支持的相关页面,但我仍然对有关C++ STL运行时的几个问题感到困惑,我希望我能在这里澄清:

1-我的库无法控制它将嵌入的应用程序,所以我不知道是否会有其他库可能使用静态/共享 STL。如果我使用 ANDROID_STL=c++_static 的静态 C++ 运行时,它是否安全,或者我是否应该担心另一个可能使用 gnustl_static 之类的库,这可能与我的库冲突?

2-如果我使用 ANDROID_STL=c++_shared 的共享 C++ 运行时,是否可以保证 STL 中的特定元素将使用 libc++ 运行时,或者如果 gnustl 不存在,是否可以使用它?例如,如果我在具有另一个 gnustl_static 库的应用程序中使用带有共享 c++ 运行时 (c++_shared) 的 std::string,我的 std::string 实现是否会从 libc++ 或 gnustl 获取?

理想情况下,我希望有一个非常精简的静态 C++ 运行时版本,其中 (c++_static) 只包含 std::vector、std::string 和 std::map。我实际上计划使用类似 -ffunction-sections 的内容,如此处和 #768 中所述。

请各位指教并谢谢。

环境详情

  • Pkg.Desc = Android NDK
  • 包装.修订版 = r15c
  • Android Studio = 3.1.2
  • 系统:cmake 主机操作系统:Arch Linux ($ uname -r % 4.18.5-arch1-1-ARCH)
  • 编译器:Clang++
  • STL:c++_static/c++_shared

c++ android stl cmake android-ndk

5
推荐指数
1
解决办法
3146
查看次数

在函数序言中,"PUSH 0xFFFFFFFF"是什么意思?

我正试图通过一本名为"初学者的逆向工程" [LINK]的书来理解汇编代码.有一段代码win-32汇编代码我不太明白.

main:
    push 0xFFFFFFFF
    call MessageBeep
    xor  eax,eax
    retn
Run Code Online (Sandbox Code Playgroud)

第一PUSH条指令做什么?为什么它会向堆栈推送0xFFFFFFFF,但永远不会再将其弹回?0xFFFFFFFF有什么意义?

提前致谢.

c x86 assembly reverse-engineering

3
推荐指数
1
解决办法
847
查看次数

bash 中`set -e` 的异常

我有一个用于制作我的项目的 bash 脚本。set -e当任何组件失败时,我在脚本的顶部中断执行。

其中一个命令会失败,但它失败是很自然的。我希望脚本的行为如下:

  • 运行脚本。
  • 到达并运行有问题的命令。
  • 如果失败,不要中断执行。仅针对此命令执行此操作。

bash continuous-integration

0
推荐指数
1
解决办法
603
查看次数

JNI 将 jobobject 从一个类转换到另一个类

因此,如果我有一个jobjectfrom jclassclazz1并且我想将其类型转换为 jclass clazz2。该怎么做呢?

我检查了Oracle JNI 文档,唯一对转换的引用来自该函数IsAssignableFrom(),但仅此而已。

java-native-interface android android-ndk

0
推荐指数
1
解决办法
2368
查看次数