依赖
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4'
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4'
创建Constant类
public class Constant {
public static final String URL_BASE="http://api.tianapi.com/";
}
字符串拼接:
http://api.tianapi.com/ social/?key=b6605dd3366f74ff0b56c518bcf9791e&num=10
com/之后拼接
MyServerInterface
public interface MyServerInterface {
@GET("social/?key=b6605dd3366f74ff0b56c518bcf9791e&num=10")
Call<ResponseBody> getLastString();
}
mainActivity类
public class MainActivity extends AppCompatActivity {
private MyServerInterface myServerInterface;
private Call<ResponseBody> mcall;
private XRecyclerView recyclerView;
private String reuslt;
private Handler handler=new Handler( ){
@Override
public void handleMessage(Message msg) {
super.handleMessage( msg );
List<ReaBean.NewslistBean> list= (List<ReaBean.NewslistBean>) msg.obj;
MyAdapter myAdapter = new MyAdapter( list, MainActivity.this );
recyclerView.setAdapter( myAdapter );
recyclerView.setLayoutManager( new LinearLayoutManager( MainActivity.this, LinearLayoutManager.VERTICAL, false) );
}
};
private List<ReaBean.NewslistBean> datas;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate( savedInstanceState );
setContentView( R.layout.activity_main );
recyclerView = findViewById( R.id.lv );
initData();
}
private void initData() {
Retrofit retrofit = new Retrofit.Builder().baseUrl( Constant.URL_BASE ).build();
myServerInterface = retrofit.create( MyServerInterface.class );
mcall = myServerInterface.getLastString();
mcall.enqueue( new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
reuslt = response.body().string();
Gson gson = new Gson();
ReaBean reaBean = gson.fromJson( reuslt, ReaBean.class );
List<ReaBean.NewslistBean> newslist = reaBean.getNewslist();
Message obtain = Message.obtain();
obtain.obj=newslist;
handler.sendMessage( obtain );
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
}
} );
}
}
main.xml布局
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/lv"></android.support.v7.widget.RecyclerView>