百度地圖部分
需要導入三個包:baidumapapi-base、baidumapapi-map、locSDK
需用使用的核心類有三個:
- MapView 地圖控件
在xml文件中像普通控件一樣使用,然後findViewbyId()。
使用getMap()方法可以得到BaiduMap類。 - Baidumap 地圖控制
setMyLocationEnabled(boolean)設置是否打開定位圖層。
animateMapStatus(MapStatusUpdate u)以動畫效果移動地圖到某點(u指定)。
clear()清除所有覆蓋物。
addOverlay(OverlayOptions options)添加覆蓋物。 - LocationClient 定位
setLocOption(LocationClientOption option)設置定位參數。
registerLocationListener(this)添加定位監聽。需要重寫onReceiveLocation(BDLocation location)方法。
start()開始監聽。
mina框架部分
需要導入的包有兩個:mina-core、slf4j-android
需要使用的核心類有五個:
IoConnector 連接控制
setConnectTimeoutMillis(long l)設置超時。
getFilterChain()獲取濾鏡鏈。
setHandler(IoHandlerAdapter adapter)設置IO適配器。
connect(InetSocketAddress addr)開始連接。返回ConnectFuture。DefaultIoFilterChainBuilder 濾鏡鏈的Builder
從服務器獲取的數據、向服務器發送的數據都要經過濾鏡鏈處理。IoHandlerAdapter IO適配器
重寫其中的方法,實現對連接、數據的監聽。ConnectFuture
awaitUninterruptibly()等待連接創建完成。
getSession()獲取連接實例。IoSession 連接實例
write()寫。read()讀。
RecyclerView部分
需要導入的包:android-support-v7-recyclerview
需要使用的核心類:
RecyclerView view控件
setLayoutManager(LayoutManager manager)設置佈局管理器。不設會報錯。
setAdapter(RecyclerView.Adapter adapter)設置適配器。RecyclerView.Adapter 這是個抽象類,需要繼承他,重寫以下方法:
onCreateViewHolder(ViewGroup viewGroup, int i)
onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position)
getItemCount()
另外,再寫個構造方法。如果需要點擊事件,再寫個接口。
public interface OnRVItemClickListener{
void onItemClick(View view, int position);
}
private OnRVItemClickListener onRVItemClickListener;
public void setOnRVItemClickListener(OnRVItemClickListener onRVItemClickListener) {
this.onRVItemClickListener = onRVItemClickListener;
}
參數view和position需要在onBindViewHolder方法中指定:
public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {
final MyViewHolder holder = (MyViewHolder) viewHolder;
if (onRVItemClickListener != null){
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int index = holder.getPosition();
onRVItemClickListener.onItemClick(holder.itemView,index);
}
});
}