13

I have a kotlin library FlowLayout lib as aar,

and want to use it in my java code (android) but can not to resolve kotlin.Pair.

FlowLayoutManager layoutManager=new FlowLayoutManager(3, RecyclerView.HORIZONTAL, new FlowLayoutManager.Interface() {
    @Override
     public kotlin.Pair<Integer, Integer> getProportionalSizeForChild(int i) {
         return null;
     }
});

I have tried android.support.v4.util.Pair but is not compatible. How can I use a kotlin lib in java code with their object dependencies?

Todd
  • 30,472
  • 11
  • 81
  • 89
java acm
  • 1,020
  • 12
  • 24

1 Answers1

18

Class kotlin.Pair belongs to the standard library org.jetbrains.kotlin:kotlin-stdlib:1.0.0, so you must have this library as a dependancy.

It is NOT recommended to use Pair in public APIs. Rather than that, create your own data class with 2 properties and give them a clearer naming than first and second.

The purpose of Pair is to server as a temporary data carrier in any intermediate operation. If you use it in your API, you lose in clarity.

voddan
  • 31,956
  • 8
  • 77
  • 87