編輯:關於Android編程
將自己的編程經歷寫出來是個好習慣
先來效果圖:




項目結構:
底部導航的實現思路,使用button等可點擊控件並置於父布局底部,配合viewpage或fragmentr實現點擊切換視圖(本項目使用viewpager)。
ZNDJ 感謝使用本app 關於 新聞 聊天 測試
public void onClick(View v) {
if (v == tag_1) {
tag_2.setChecked(false);
tag_3.setChecked(false);
} else if (v == tag_2) {
tag_1.setChecked(false);
tag_3.setChecked(false);
} else if (v == tag_3) {
tag_1.setChecked(false);
tag_2.setChecked(false);
}
實現思路:在布局中加入viewpager並使用fragmentpageradapter進行設置適配器(viewpager是view的切換控件,基本適配器為pageradapter)
package com.example.swing.zndj;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
/**
* Created by swing on 2016/9/16.
*/
public class ChatFragment extends Fragment {
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.layout_chat,null);
return view;
}
}
private ViewPager viewpager; private Listfragmentlist;
setSupportActionBar(toolbar);
toolbar.setNavigationIcon(R.drawable.ic_info);
toolbar.setTitle(R.string.app_name);
toolbar.setSubtitle(R.string.subtitle);
實現思路:使用5.0版本的新控件toolbar(先關閉應用自帶的actionbar)
android:windowActionBar=false
//toolbar初始化,正常是先初始化toolbar再setsupportactionbar我這運行沒問題,如果出錯可以換下先後
實現思路:使用新控件drawerlayout實現側滑
drawerlayout的xml:
drawerlayout的java:
//手動打開關閉側滑
drawerLayout.closeDrawer(left_dawer);
drawerLayout.openDrawer(left_dawer);
//是否打開了側滑
drawerLayout.isDrawerOpen(left_dawer)
5、recyclerview
實現思路:使用新控件recyclerview
需要layoutmanager+adapter+decoration+移除添加動畫
left_dawer.setLayoutManager(new LinearLayoutManager(this));
left_dawer.setAdapter(new MyRecyclerViewAdapter(data));
/**
* RecyclerView的適配器類
*/
class MyRecyclerViewAdapter extends RecyclerView.Adapter{
String[] data;
public MyRecyclerViewAdapter(String[] data) {
this.data = data;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.layout_revyvlerview_item,viewGroup,false);
MyViewHolder myviewholder = new MyViewHolder(view);
return myviewholder;
}
@Override
public void onBindViewHolder(MyViewHolder myViewHolder, int i) {
myViewHolder.textview.setText(data[i]);
}
@Override
public int getItemCount() {
return data.length;
}
Android使用HttpClient下載圖片
在前一章中講的是Android使用HttpURLConnection下載圖片,這一章使用HttpClient下載圖片 HttpURLConnection與HttpClie
Android 網絡開源庫之-retrofit
前言當前的網絡開源庫有許多,如volley,okhttp,retrofit等,這三個庫當前是比較火的,其中,okhttp和retrofit由square團隊開發。關於這
頁面未隨軟鍵盤上升及android隱藏軟鍵盤總結
就是在配置文件裡對應activity加上這句:android:windowSoftInputMode=stateVisible|adjustResize &nb
Android學習筆記十二.深入理解LauncherActvity 之LauncherActivity、PreferenceActivity、PreferenceFragment
深入理解LauncherActvity 之LauncherActivity、PreferenceActivity、PreferenceFragment 從下圖我們可以知道
Android PagerSlidingTitleIconTabStrip 可以在title旁邊加小圖標的PagerSlidingTabStrip
public class MainFragmentPa