?
网络图片查看器
清单文加入网络访问权限:
- |<!--?访问internet权限?-->??
- <uses-permission?android:name="android.permission.INTERNET"/>??
?
界面如下:
示例:
- <span?style="FONT-WEIGHT:?normal">public?class?MainActivity?extends?Activity?{??
- ????private?EditText?imagepath;??
- ????private?ImageView?imageView;??
- [email protected]
- ????public?void?onCreate(Bundle?savedInstanceState)?{??
- ????????super.onCreate(savedInstanceState);??
- ????????setContentView(R.layout.main);??
- ??????????
- ????????imagepath?=?(EditText)?this.findViewById(R.id.imagepath);??
- ????????imageView?=?(ImageView)?this.findViewById(R.id.imageView);??
- ??????????
- ????????Button?button?=?(Button)?this.findViewById(R.id.button);??
- ????????button.setOnClickListener(new?View.OnClickListener()?{????????????
- ????????????public?void?onClick(View?v)?{??
- ????????????????String?path?=?imagepath.getText().toString();??
- ????????????????try{??
- ????????????????????byte[]?data?=?ImageService.getImage(path);//获取图片数据??
- ????????????????????if(data!=null){??
- ????????????????????????//构建位图对象??
- ????????????????????????Bitmap?bitmap?=?BitmapFactory.decodeByteArray(data,?0,?data.length);??
- ????????????????????????imageView.setImageBitmap(bitmap);//显示图片??
- ????????????????????}else{??
- ????????????????????????Toast.makeText(getApplicationContext(),?R.string.error,?1).show();??
- ????????????????????}?????????????????????
- ????????????????}catch?(Exception?e)?{??
- ????????????????????Toast.makeText(getApplicationContext(),?R.string.error,?1).show();??
- ????????????????}??
- ????????????}??
- ????????});??
- ????}??
- }</span>??
- <span?style="FONT-WEIGHT:?normal">public?class?ImageService?{??
- ????/**??
- ?????*?获取图片??
- [email protected]
- [email protected]
- ?????*/??
- ????public?static?byte[]?getImage(String?path)?throws?Exception{??
- ????????URL?url?=?new?URL(path);??
- ????????HttpURLConnection?conn?=?(HttpURLConnection)?url.openConnection();??
- ????????//设置超时时间??
- ????????conn.setConnectTimeout(5000);??
- ????????conn.setRequestMethod("GET");??
- ????????if(conn.getResponseCode()==200){??
- ????????????InputStream?inStream?=?conn.getInputStream();??
- ????????????byte[]?data?=?StreamTool.read(inStream);??
- ????????????return?data;??
- ????????}??
- ????????return?null;??
- ????}??
- }</span>??
- <span?style="FONT-WEIGHT:?normal">public?class?StreamTool?{??
- ????/**??
- ?????*?读取输入流数据??
- [email protected]
- [email protected]
- ?????*/??
- ????public?static?byte[]?read(InputStream?inStream)?throws?Exception{??
- ????????ByteArrayOutputStream?outStream?=?new?ByteArrayOutputStream();??
- ????????byte[]?buffer?=?new?byte[1024];??
- ????????int?len?=?0;??
- ????????while(?(len?=?inStream.read(buffer))?!=?-1?){??
- ????????????outStream.write(buffer,?0,?len);??
- ????????}??
- ????????inStream.close();??
- ????????return?outStream.toByteArray();??
- ????}??
- }</span>??
?
网页源码查看器
如果网页的源码超过屏幕的显示位置的话,要求出现滚动条.
?
- <ScrollView??
- ?android:layout_width="wrap_content"???
- ?android:layout_height="wrap_content"???
- >??
- ??<TextView????
- ?android:layout_width="fill_parent"???
- ?android:layout_height="wrap_content"???
- ?android:id="@+id/htmlsource"??
- ?/>??
- </ScrollView>??
?
?
?
?
?
?
?
?
?
?
?
界面如下:
示例
?
- [email protected]
- ??public?void?onCreate(Bundle?savedInstanceState)?{??
- ??????super.onCreate(savedInstanceState);??
- ??????setContentView(R.layout.main);??
- ??????pathText?=?(EditText)?this.findViewById(R.id.path);??
- ??????htmlsource?=?(TextView)?this.findViewById(R.id.htmlsource);??
- ????????
- ??????Button?button?=?(Button)?this.findViewById(R.id.button);??
- ??????button.setOnClickListener(new?View.OnClickListener()?{??
- ??????
- ????public?void?onClick(View?v)?{??
- ????????String?path?=?pathText.getText().toString();??
- ????????try{??
- ????????????//获取源码??
- ????????????String?html?=?PageService.getHtml(path);??
- ????????????htmlsource.setText(html);??
- ????????}catch?(Exception?e)?{??
- ????????????Toast.makeText(getApplicationContext(),?R.string.error,?1).show();??
- ????????}??
- ????}??
- });??
- ??}??
?
- public?class?PageService?{??
- ????/**??
- ?????*?获取网页源代码??
- [email protected]
- [email protected]
- ?????*/??
- ????public?static?String?getHtml(String?path)?throws?Exception{??
- ????????URL?url?=?new?URL(path);??
- ????????HttpURLConnection?conn?=?(HttpURLConnection)?url.openConnection();??
- ????????conn.setConnectTimeout(5000);??
- ????????conn.setRequestMethod("GET");??
- ????????if(conn.getResponseCode()?==?200){??
- ????????????byte[]?data?=?StreamTool.read(conn.getInputStream());??
- ????????????return?new?String(data,?"UTF-8");??
- ????????}??
- ????????return?null;??
- ????}??
- }??
?