編輯:關於Android編程
文件浏覽器用來讀取android系統中的所有文件和文件夾。具體說明如下:
最上面顯示當前的文件路徑。如果是根目錄,則顯示“/”; 第二行是返回上一級按鈕。如果當前處於根目錄下,則該行不顯示; 若當前是文件夾,則可點擊,進入下一級目錄,若是文件,點擊的話會提示不支持讀取。新加功能,監聽外部存儲設備USB和SD卡插拔廣播。代碼如下:
public class UsbBroadCastReceiver extends BroadcastReceiver { @SuppressLint("ShowToast") @Override public void onReceive(final Context context, final Intent intent) { final String action = intent.getAction(); final IntentFilter iFilter = new IntentFilter(); iFilter.addDataScheme("file"); if (action.equals(Intent.ACTION_MEDIA_EJECT)) { Toast.makeText(context, "外部存儲設備已移除", 1000).show(); } else if (action.equals(Intent.ACTION_MEDIA_MOUNTED)) { Toast.makeText(context, "正在准備外部USB存儲設備", 1000).show(); } else if (action.equals(Intent.ACTION_MEDIA_CHECKING)) { Toast.makeText(context, "正在准備外部SD卡存儲設備", 1000).show(); } }
當然還要在AndroidMainfest.xml中添加相應配置:
下面是主要的程序源碼:
package browers; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import android.app.Activity; import android.content.Intent; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; import android.widget.TextView; import com.example.browers.R; public class FileManager extends Activity { private TextView mCurrentPath; private TextView mReturn; private ListView mList; private View mPathLine; private String mReturnPath = null; private FileManagerAdapter adapter; private ArrayList
相應的adapter文件:
package browers; import java.util.ArrayList; import java.util.List; import java.util.Map; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; import com.example.browers.R; public class FileManagerAdapter extends BaseAdapter { private final Context mContext; private final List> list = new ArrayList >(); public FileManagerAdapter(final Context context) { super(); mContext = context; } @Override public int getCount() { return list.size(); } @Override public Object getItem(final int position) { return position; } @Override public long getItemId(final int arg0) { return arg0; } @Override public View getView(final int position, View convertView, final ViewGroup arg2) { FileMangerHolder holder; if (null == convertView) { holder = new FileMangerHolder(); convertView = LayoutInflater.from(mContext).inflate( R.layout.file_item, null); holder.icon = (ImageView) convertView .findViewById(R.id.file_item_icon); holder.name = (TextView) convertView .findViewById(R.id.file_item_name); convertView.setTag(holder); } else { holder = (FileMangerHolder) convertView.getTag(); } holder.icon .setImageResource((Integer) (list.get(position).get("icon"))); holder.name.setText((String) (list.get(position).get("name"))); return convertView; } public class FileMangerHolder { public ImageView icon; public TextView name; } // The information add to listView public void setFileListInfo(final List > infos) { list.addAll(infos); notifyDataSetChanged(); } }
最後是兩個布局文件:file_list.xml和file_item.xml
以上是全部源碼,換了環境運得時,包名可能需要根據自己的目錄路徑做一下相應的更改,其他的基本沒有問題,程序很簡單,也可以很好的進行拓展。
兩年前寫書的時候,就在研究Android L提出的Vector,可研究下來發現,完全不具備兼容性,相信這也是它沒有被廣泛使用的一個原因,經過Google的不懈努力,現在V
設置ES文件浏覽器連接電腦管理需要管理賬號。我們想用ES文件浏覽器來管理我們手機的時候,又不想一連電腦,別人知道我的手機ftp的時候,就可以進入,想設置賬戶
前言 經常接觸Android網絡編程的我們,對於Volley肯定不陌生,但我們不禁要問,對於Volley我們真的很了解嗎?Volley的內部是怎樣實現的?為什麼幾行代碼
靠譜助手安卓模擬器黑屏/閃退的最有可能的原因在於顯卡驅動。顯卡驅動的兼容性對於安卓模擬器向來都是個大難題,各大安卓模擬器也在努力解決。但是顯卡型