小编Rav*_*aha的帖子

Kotlin中List和Array类型之间的区别

ListArray类型有什么区别?
它似乎可以与它们进行相同的操作(循环,过滤器表达式等),行为或用法有什么不同吗?

val names1 = listOf("Joe","Ben","Thomas")
val names2 = arrayOf("Joe","Ben","Thomas")

for (name in names1)
    println(name)
for (name in names2)
    println(name)
Run Code Online (Sandbox Code Playgroud)

kotlin

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

无法在Kotlin中"findViewById".获取错误"类型推断失败"

当我试图找到一个RecycleViewid 时,我收到以下错误.

错误: - 类型推断失败:没有足够的信息来推断参数T.

错误

码:

class FirstRecycleViewExample : AppCompatActivity() {
    val data = arrayListOf<String>()
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.first_recycleview)

        val recycler_view =  findViewById(R.id.recycler_view) as RecyclerView ///IN THIS LINE I AM GETTING THE ERROR

        data.add("First Data")
        data.add("Second Data")
        data.add("Third Data")
        data.add("Forth Data")
        data.add("Fifth Data")

        //creating our adapter
        val adapter = CustomRecycleAdapter(data)

        //now adding the adapter to recyclerview
        recycler_view.adapter = adapter
    }
}
Run Code Online (Sandbox Code Playgroud)

android type-inference android-layout kotlin

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

在使用Android O的"android:fontFamily"时获取错误"文件名必须以.xml结尾"?

Android O引入了一项新功能,即XML字体,可让您将字体用作资源.我fontAndroid开发人员提供的资源文件中创建文件夹,但问题是我file name must end with .xml在使用fontAndroid O版本中提供的文件夹时收到错误.

请检查以下布局.

 <TextView
   android:id="@+id/txtMsgCount"
   android:layout_width="wrap_content"
   android:layout_height="16dp"
   android:background="@drawable/msg_count"
   android:gravity="center"
   android:text="123"
   android:fontFamily="@font/Montserrat_Regular" ////IT IS MY FONT STYLE
   android:textColor="@android:color/white"
   android:textSize="10sp" />
Run Code Online (Sandbox Code Playgroud)

请检查fontresMontserrat_Regular.otf文件创建的文件夹

我的字体文件夹,字体样式

使用上面的内容时出现以下错误,如下所示:

得到错误

我搜索了它但没有得到预期的结果,请检查:

1.第一链接
2.第二链接
3.第三链接
4.第四链接

Font resource file没有创建,因为我点击了Right-click the font folder and go to New > Font resource file.但是没有获得选项Font resource file,请查看以下内容:

在此输入图像描述

layout fonts android android-resources android-8.0-oreo

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

从Firebase获取数据,以执行pull刷新和加载更多功能

然而现在我从FireBase一次获取所有数据.我想做什么,一次获取LIMITS中的数据,如15条记录.就像在第一次用户从中获取15条记录Firebase时,当用户在屏幕的底部/顶部加载更多数据时,应该有15条记录来自Firebase并添加到列表的底部/ TOP.

我已经实现了逻辑,以便从数据库的顶部或底部获取15条记录,Firebase如下所示: -

public class ChatActivity extends AppCompatActivity implements FirebaseAuth.AuthStateListener {

    private FirebaseAuth mAuth;
    private DatabaseReference mChatRef;

    private Query postQuery;
    private String newestPostId;
    private String oldestPostId;
    private int startAt = 0;
    private SwipeRefreshLayout swipeRefreshLayout;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_chat);

        mAuth = FirebaseAuth.getInstance();
        mAuth.addAuthStateListener(this);

        mChatRef = FirebaseDatabase.getInstance().getReference();
        mChatRef = mChatRef.child("chats");

         /////GETTING THE VIEW ID OF SWIPE LAYOUT
        swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipeRefreshLayout);

    /////GETTING FIRST 10 RECORDS …
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-realtime-database firebase-storage

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

如何在TextView Android上使用带有文本的图像(设备的存储图像)?

我正在创建聊天应用程序,我从服务器获取EMOJI(IMAGE URLS).

我使用这个图像(表情符号网址)在我TextView的下面的代码行中的文本.

String stringWithHtml = "Sample string with an <img src=\"http://MY_SERVER.emoji.s3.amazonaws.com/cf68/5794d5f7895fa10a8f8e1350/imgList/5794d5f7895fa10a8f8e136a.png\"></img>" +
                        "<img src=\"http://MY_SERVER.emoji.s3.amazonaws.com/cf68/5794d5f7895fa10a8f8e1350/imgList/5794d5f7895fa10a8f8e135a.png\"></img>"+
                        "<img src=\"http://MY_SERVER.emoji.s3.amazonaws.com/cf68/5794d5f7895fa10a8f8e1350/imgList/5794d5f7895fa10a8f8e135b.png\"></img>"; 


Drawable drawable = Drawable.createFromStream(new URL(source).openStream(), "src name");
                    drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());

Spanned spannedValue = Html.fromHtml(stringWithHtml, drawable, null); 
MY_TEXTVIEW.setText(spannedValue);
Run Code Online (Sandbox Code Playgroud)

这一切,我正在使用AsynTask并获得如下预期结果: -

我的结果

现在我将所有表情符号(图像)存储在我的设备上,并希望在我的文本中使用它TextView.

我的问题是我们如何在TextView上使用带有文本的设备(存储图像)?

我在SO上搜索了它但没有得到预期的结果.请检查我访问过的以下链接.

1.第一链接
2.第二链接
3.第三链接
4.第四链接

我已经使用了ImageSpan它,但另一个问题出现了,我已经在SO 上发布了问题点击这里

请帮我解决这个问题.谢谢

java android image imagespan

11
推荐指数
1
解决办法
943
查看次数

Gitlab CI :- 如何在 Gitlab 中创建不依赖于任何系统的 Shared Runner?

我研究过Gitlab Runner两种类型,一种是Custom Runner,另一种是Shared Runner

我在 中使用了Custom Runner类似的方法来创建的。它运行良好并创建了所需的构建。但通过这种方式,我遇到的一个问题是,它取决于我的系统,这意味着当我的系统打开时,我的工作正常,但当我的系统关闭时,则无法执行操作,因为它取决于我的系统运行程序。dockerGitlabapkAndroidCustom RunnerGitlab

我已阅读有关Shared Runner不依赖于任何内容并执行操作的内容。我已阅读文档,但没有找到实现它的正确方法。

请检查我.gitlab-ci.yml下面的文件

image: jangrewe/gitlab-ci-android

stages:
  - build

before_script:
  - export GRADLE_USER_HOME=$(pwd)/.gradle
  - chmod +x ./gradlew

cache:
  key: ${CI_PROJECT_ID}
  paths:
    - .gradle/

build:
  stage: build
  tags:
    - dev-ci
  script:
    - ./gradlew assembleDevelopment assembleProduction assembleStaging
  artifacts:
    paths:
      - app/build/outputs/
Run Code Online (Sandbox Code Playgroud)

请帮助Shared RunnerGitlab

android apk gitlab gitlab-ci gitlab-ci-runner

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

无法导入com.squareup.okhttp.OkHttpClient;

我正在研究android studio并从网上获取一些数据.我尝试使用OkHttpClient并将jar添加到我的项目文件夹但仍然无法导入它.

它表明can't resolve symbol okhttp.我尝试了一些解决方案,但无法解决问题.这是我的build.gradle文件

apply plugin: 'com.android.application'
android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"

    defaultConfig {
        applicationId "com.example.app"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }


}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'com.google.android.gms:play-services:8.4.0'
 //   compile files('libs/okhttp-3.0.1.jar')
   // compile files('libs/okio-1.6.0.jar')


}
Run Code Online (Sandbox Code Playgroud)

android gradle okhttp

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

获得异常的Fcm集成


我正在进行FCM集成,但得到了java.lang.ClassNotFoundException: Didn't find class "service.MyFirebaseMessagingService" on path: DexPathList[[zip file "/data/app/com.rk.servicepractise-2/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]

我已经搜索过但没有得到正确的解决方案,请检查下面的代码,让我知道我在哪里做错了?

请检查我classesmanifest使用文件gradle,请帮我出短距离这个问题.
我的第一个类是MyFirebaseInstanceIDService扩展FirebaseInstanceIdService

public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {

    private static final String TAG = "MyFirebaseIIDService";

    @Override
    public void onTokenRefresh() {

        //Getting registration token
        String refreshedToken = FirebaseInstanceId.getInstance().getToken();

        //Displaying token on logcat
        Log.d(TAG, "Refreshed token: " + refreshedToken);

    }

    private void sendRegistrationToServer(String token) {
        //You can implement this method to store the token on your server …
Run Code Online (Sandbox Code Playgroud)

android google-cloud-messaging firebase-cloud-messaging

8
推荐指数
1
解决办法
5884
查看次数

onStartCommand()和onBind()之间的区别

onBind()方法的"绑定"操作与仅调用onStartCommand()有何不同?

onStartCommand()
Run Code Online (Sandbox Code Playgroud)

"当另一个组件(例如活动)通过调用请求启动服务时,系统会调用此方法startService()."

onBind()
Run Code Online (Sandbox Code Playgroud)

当另一个组件想要通过调用与服务绑定(例如执行RPC)时,系统调用此方法bindService().

我想写一个聊天客户端服务,它接收来自多个用户的消息.哪种功能更合适?

android android-service

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

Kotlin || 如何在Android中区分视图ID和onClick()之类的switch语句?

正如我们所知道的Android,我们正在使用的switch语句不同的view下面一样,我们用来implement View.OnClickListener获取onClick接口的方法来执行任何任务

 @Override
    public void onClick(View view) {

        switch (view.getId()) {
            case R.id.imgBack:

              ///DO SOME THING HERE

                break;

            case R.id.btnSubmit:

                ///DO SOME THING HERE

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

我正在使用的相同的东西Kotlin,通过实现 View.OnClickListener和获得如下的覆盖方法

class FeedBackActivity : AppCompatActivity(), View.OnClickListener {
    override fun onClick(p0: View?) {

 /// HOW CAN I USE THE SWITCH STATEMENT TO DISTINGUISH THE VIEW CLICK 

    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.feed_back_screen)

        imgBack.setOnClickListener(this)


    }

}
Run Code Online (Sandbox Code Playgroud)

在上面的代码我想用同样的方法switch来区分不同的视图点击.我怎样才能将其存档 …

java android onclick kotlin

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