小编Iro*_*ack的帖子

无法从内部类访问变量:Kotlin android

我是Android中Kotlin开发的新手.在这里,我试图从它的内部类中访问类中定义的变量,如下所示.

class MainActivity : AppCompatActivity() {

    var frags: MutableList<Fragment> = mutableListOf()

//.............onCreate and other methods ....

    internal class CustAdapter(var arrayList: ArrayList<NavigationData>) : RecyclerView.Adapter<CustAdapter.MyViewHolder>() {
    override fun onBindViewHolder(holder: MyViewHolder?, position: Int) {
        holder!!.bindItems(arrayList[position])
    }

    override fun getItemCount(): Int {
        return arrayList.size
    }
    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CustAdapter.MyViewHolder {
        val v = LayoutInflater.from(parent.context).inflate(R.layout.navigation_item, parent, false)
        return MyViewHolder(v)
    }

    class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        fun bindItems(data: NavigationData) {


            itemView.setOnClickListener {
                   frags.add(BoardFrag()) ///// here i'm getting error "unresolved symbol"

            }
        } …
Run Code Online (Sandbox Code Playgroud)

android class kotlin

20
推荐指数
3
解决办法
5869
查看次数

新的android工作室风味

我刚刚更新了我的android工作室并遇到了以下错误.

Error:java.lang.RuntimeException: Unexpected scopes found in folder 'D:\****\****\****\app\build\intermediates\transforms\dexMerger\dev_demo\debug'. Required: EXTERNAL_LIBRARIES. Found: EXTERNAL_LIBRARIES, PROJECT, SUB_PROJECTS
Run Code Online (Sandbox Code Playgroud)

我尝试关闭,清洁和建造,但它不起作用.

有谁遇到过同样的问题?

android gradle android-studio

10
推荐指数
3
解决办法
2316
查看次数

Firefox控制台ReferenceError:未定义浏览器

我正在尝试学习Firefox的WebExtension开发.我发现窗口调试工具非常有用,因为我可以在窗口上下文中交互式地评估javascript代码.

对于浏览器级别的Webextension API,在尝试类似地使用浏览器控制台时,我完全没有成功.例如,尝试使用选项卡API

单击menu-> developer-> browser console

在控制台命令行中输入以浏览器开头的任何表达式

"ReferenceError:浏览器未定义"

我尝试过使用chrome并得到同样的错误(阅读有关chrome.*vs browser的文章.*)

例如,尝试查找所有标签:

var querying=browser.tabs.query(queryInfo)
Run Code Online (Sandbox Code Playgroud)

要么

chrome.tabs.query()
Run Code Online (Sandbox Code Playgroud)

返回未定义的浏览器或chrome

请帮忙

firefox firefox-addon-webextensions

9
推荐指数
1
解决办法
6241
查看次数

Playstore:如何发布早期访问应用程序?

我想为我的应用程序提前发布,但我没有选择在Playstore商店列表部分选择"早期访问".如何让我的应用程序进入Playstore应用程序的早期访问部分?在此输入图像描述

在此输入图像描述

android google-play google-play-console

9
推荐指数
1
解决办法
4740
查看次数

改进2.0标头身份验证

private void setUpRestClient() {
       OkHttpClient client = new OkHttpClient();
       client.interceptors().add(new Interceptor() {
           @Override
           public Response intercept(Chain chain) throws IOException {
               Request original = chain.request();
               Request request = original.newBuilder()
                       .header("Accept", "application/pyur.v1")
                       .header("Authorization", new SharedPreferencesUtil(getBaseContext()).getToken())
                       .header("Content-Type", "application/json")
                       .method(original.method(),original.body())
                       .build();
               return chain.proceed(request);
           }
       });
       RestClient.getInstance().configureRestAdapter(this, getResources().getString(R.string.base_url),client);
   }

public void configureRestAdapter(final Context context, String baseUrl, OkHttpClient client) {
    Gson gson = new GsonBuilder()
            .setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES)
            .setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
            .excludeFieldsWithModifiers(Modifier.FINAL, Modifier.TRANSIENT, Modifier.STATIC)
            .create();
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(baseUrl)
            .addConverterFactory(GsonConverterFactory.create(gson))
            .client(client)
            .build();
    service = retrofit.create(NetworkServiceInterface.class);
}
Run Code Online (Sandbox Code Playgroud)

这现在让我在Retrofit 2.0中失败了,最初我没有"授权"标题,并且它给了我未经授权的,这是可以理解的.但是现在我用我的身份验证令授权它并且它失败了.Retrofit …

interceptor http-headers retrofit2

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

如何使用Android中的Kotlin从NavigationView的headerLayout中指定的布局访问视图

我想访问包含在NavigationView的headerLayout中的TextView.是否可以使用Kotlin android扩展程序访问该视图?我使用了这个方法,但TextView(此处为txtName)始终为null.

这是我的activity_main.xml

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="end"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header_splash"
    app:menu="@menu/activity_splash_drawer" />
Run Code Online (Sandbox Code Playgroud)

nav_header_splash.xml

<TextView
    android:id="@+id/txtName"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/txt1"
    android:layout_below="@+id/imageView"
    android:text="@string/name"
    android:textSize="18sp"
    android:textColor="@color/white" />
Run Code Online (Sandbox Code Playgroud)

MainActivity.kt 我已导入

import kotlinx.android.synthetic.main.nav_header_splash.*
Run Code Online (Sandbox Code Playgroud)

onCreate()Activity类我设置文本就好

txtName.text = "Sample Code"
Run Code Online (Sandbox Code Playgroud)

app文件夹的build.gradle

apply plugin: 'kotlin-android-extensions'
Run Code Online (Sandbox Code Playgroud)

我的项目的build.gradle

 classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)

我的代码中有错误吗?请帮忙.我是Kotlin的新人.

android kotlin kotlin-extension kotlin-android-extensions

7
推荐指数
1
解决办法
623
查看次数

错误消息:MongoError:错误的身份验证通过URI字符串失败

MongoDB和Node.js的新手。我试图通过mongo给我的连接字符串连接到我的mongoDB服务器:

“ mongodb + srv:// david:password@cluster0-re3gq.mongodb.net/test?retryWrites = true”

在我的代码中,我像这样通过猫鼬调用连接(显然输入了密码):

const mongoose = require('mongoose');
const db = 'mongodb+srv://david:<password>@cluster0-re3gq.mongodb.net/test?retryWrites=true'
mongoose
    .connect(db, { 
        useNewUrlParser: true,
        useCreateIndex: true
      })
    .then(() => console.log('MongoDB connected...'))
    .catch(err => console.log(err));
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,出现以下错误

“ MongoError:错误的身份验证失败。”

关于这意味着什么的任何想法?谢谢!

mongoose mongodb node.js

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

如何用Kotlin语言将char转换为ascii值

我正在开发一个Android应用程序,kotlin需要在其中将字符串字符转换为其ASCII值,

fun tryDiCript(cypher: String) :String {
        var cypher = "fs2543i435u@$#g#@#sagb@!#12416@@@"
        var originalText = ""

        var regEx =Regex("[a-z]")
        for(char in  regEx.findAll(cypher))
        {                 
            originalText += (char.value.toInt()).toString()            
        }
       return originalText
}
Run Code Online (Sandbox Code Playgroud)

本教程网站向我展示了使用方法,char.toInt()但它给出了运行时错误提示

原因:java.lang.NumberFormatException:无效的int:“ u”

因此,如果有人知道如何将char转换为ASCII值,请如何帮助我。

android kotlin

5
推荐指数
3
解决办法
3649
查看次数

使用 Retrofit Android 进行相互认证

我需要在 api 请求上发送 .CRT 和 .KEY 文件。我设法使用 Postman 完成了请求,但我不知道如何在 android 代码中传递密钥。 在此处输入图片说明

显像管:

-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)

钥匙:

-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)

这是我的客户

fun getClient(url: String, context: Context): Retrofit {

        // Loading CAs from an InputStream
        val cf: CertificateFactory = CertificateFactory.getInstance("X.509")

        val ca: Certificate = context.resources.openRawResource(R.raw.crt).use { cert ->  cf.generateCertificate(cert) }

        // Creating a KeyStore containing our trusted CAs
        val keyStoreType = KeyStore.getDefaultType()
        val keyStore = KeyStore.getInstance(keyStoreType).apply {
            load(null, null)
            setCertificateEntry("ca", ca)
        }

        // Creating a TrustManager …
Run Code Online (Sandbox Code Playgroud)

ssl android kotlin retrofit mutual-authentication

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

光标有时在Rstudio中从垂直线变为下划线

我在64位Windows 10 Acer笔记本电脑上使用R-studio 3.3.3。我是R语言编程的新手,我刚刚发现我的光标有时在R-studio中从垂直线变为下划线。有人可以告诉我为什么吗?

rstudio windows-10

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