我是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工作室并遇到了以下错误.
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)
我尝试关闭,清洁和建造,但它不起作用.
有谁遇到过同样的问题?
我正在尝试学习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
请帮忙
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 …
我想访问包含在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的新人.
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:错误的身份验证失败。”
关于这意味着什么的任何想法?谢谢!
我正在开发一个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值,请如何帮助我。
我需要在 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) 我在64位Windows 10 Acer笔记本电脑上使用R-studio 3.3.3。我是R语言编程的新手,我刚刚发现我的光标有时在R-studio中从垂直线变为下划线。有人可以告诉我为什么吗?
android ×6
kotlin ×4
class ×1
firefox ×1
firefox-addon-webextensions ×1
google-play ×1
gradle ×1
http-headers ×1
interceptor ×1
mongodb ×1
mongoose ×1
node.js ×1
retrofit ×1
retrofit2 ×1
rstudio ×1
ssl ×1
windows-10 ×1