12

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
  • 28,544
  • 10
  • 77
  • 83
java acm
  • 960
  • 9
  • 22

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
  • 28,788
  • 8
  • 73
  • 83