你好,我试图实现一个泛型方法作为控制器基方法,但我无法理解的问题发生在泛型方法签名上。
<T> ResponseEntity<T> makeApiCall(String path, HttpMethod httpMethod, T body, boolean isAdmin){
String sender = isAdmin ? adminHash : userHash;
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", sender);
headers.add("Content-Type", "application/json");
HttpEntity<T> entity = new HttpEntity<>(body,headers);
ResponseEntity<T> responseEntity = restTemplate.exchange(path, HttpMethod.POST, entity, body.getClass());
return responseEntity;
}
Run Code Online (Sandbox Code Playgroud)
我目前的编译错误如下:
Incompatible equality constraint: T and capture of ? extends Object
Run Code Online (Sandbox Code Playgroud) 我正在使用这个xml,它包含一个ListView和一个浮动操作按钮.我希望FAB始终位于右下角(但不要太靠近屏幕的边框),但它只适合列表的最后一项(所以当列表中有一个项目时,它就在右上角)
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.reminder.other_activities.AllSimpleRemindersActivity">
<com.baoyz.swipemenulistview.SwipeMenuListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/simpleRems"
android:dividerHeight="0dp"
android:divider="@null"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true" />
<RelativeLayout
android:id="@+id/test"
android:layout_width="match_parent"
android:layout_height="match_parent">
</RelativeLayout>
<android.support.design.widget.FloatingActionButton
android:layout_margin="10dp"
android:id="@+id/myFAB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:backgroundTint="#FF0000"
app:borderWidth="0dp"
app:elevation="8dp"
app:layout_anchor="@id/test"
app:layout_anchorGravity="bottom|right|end" />
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)