当前位置:  编程技术>移动开发
本页文章导读:
    ▪网络连接形式 wifi&3g        网络连接方式 wifi&3g     private void checkNetworkInfo()     {         ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo mobileInfo = connMgr.getNetworkIn.........
    ▪ 失去网路图片        得到网路图片 String icoURI = "http://202.140.96.134:8080/FS-RSS/img/RN.png";           URL imgURL = new URL(/blog_article/iu/index.html);      URLConnection conn = imgURL.openConnection();                        conn.conne.........
    ▪ ListView Item选择有关问题解决之道       ListView Item选择问题解决之道   在Android应用开发中,很多时候都会遇到这样的需求,一个listView,含有N项,当点击某项时,该项展开,显示该项中隐藏的某些控件,再点击,该项收回,重新.........

[1]网络连接形式 wifi&3g
    来源: 互联网  发布时间: 2014-02-18
网络连接方式 wifi&3g

    private void checkNetworkInfo()

    {

        ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

 

        NetworkInfo mobileInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

        State mobileState = mobileInfo.getState();

        boolean isMobileAvalilable = mobileInfo.isAvailable();

        boolean isMobileConn = mobileInfo.isConnected();

        boolean isMobile = mobileInfo.isConnectedOrConnecting();

        txt3G.setText("3g state is : " + mobileState.toString());

        Log.v(TAG, "mobile state is : " + mobileState.toString());

 

 

        //isWifiAvalilable = true, isWifiConn = true, isWifi = true, when wifi connected but can not go on the web

        NetworkInfo wifiInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        State wifiState = wifiInfo.getState();

        boolean isWifiAvalilable = wifiInfo.isAvailable();

        boolean isWifiConn = wifiInfo.isConnected();

        boolean isWifi = wifiInfo.isConnectedOrConnecting();

        txtWifi.setText("wifi state is : " + wifiState.toString());

        Log.v(TAG, "wifi state is : " + wifiState.toString());

 

 

        //active network info

        NetworkInfo activeInfo = connMgr.getActiveNetworkInfo();

        String typeName = activeInfo.getTypeName();

        State activeState = activeInfo.getState();

        Log.v(TAG, "active network is : " + typeName);

        Log.v(TAG, "active state is " + activeState.toString());

 

        if(mobileState==State.CONNECTED||mobileState==State.CONNECTING)

            return;

        if(wifiState==State.CONNECTED||wifiState==State.CONNECTING)

            return;

 

//        startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));

//        startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));

 

    }


    
[2] 失去网路图片
    来源: 互联网  发布时间: 2014-02-18
得到网路图片

  • String icoURI = "http://202.140.96.134:8080/FS-RSS/img/RN.png";     
  •     
  • URL imgURL = new URL(/blog_article/iu/index.html);     
  • URLConnection conn = imgURL.openConnection();     
  •                  
  • conn.connect();     
  • InputStream is = conn.getInputStream();     
  •                  
  • BufferedInputStream bis = new BufferedInputStream(is);   

  • 定义网络图片对应的BufferedInputStream 

        
    [3] ListView Item选择有关问题解决之道
        来源: 互联网  发布时间: 2014-02-18
    ListView Item选择问题解决之道

     

    在Android应用开发中,很多时候都会遇到这样的需求,一个listView,含有N项,当点击某项时,该项展开,显示该项中隐藏的某些控件,再点击,该项收回,重新隐藏部分控件,当一项打开状态,点击另一项,另一项展开,该项关闭。(说的有点绕,看下图)

            在去年的时候,自己的一篇文章(http://blog.csdn.net/aomandeshangxiao/article/details/6643831),里面有Item的选择问题,用的方法比较笨,要遍历一遍,把所有的item全部都设置一下,应该是很浪费资源的。还有一个问题就是,当listview的item多于一个屏幕的时候,会出现重复选择问题,就是当你选中一项滑动的时候,可能会发现滑动后出现的某项也是在选中状态,这个问题令人十分抓狂。见网上有个方法是:在adapter的getView里面不使用convertview。每一个view都是重新创建一个。能够解决问题,但是还是有点浪费资源。

     

            先看下效果图:第二项被选中

     

    第四项被选中:

     

     

            这个方法也是在他人的帮助下,努力得来,分享一下!


    [java] 
    public class ListViewTestActivity extends Activity implements OnItemClickListener{ 
        private ListView mListView; 
        private ListAdapter mAdapter; 
        @Override 
        public void onCreate(Bundle savedInstanceState) { 
            super.onCreate(savedInstanceState); 
            setContentView(R.layout.main); 
             
            mListView = (ListView)findViewById(R.id.list); 
            mAdapter = new  ListAdapter(this); 
            mListView.setAdapter(mAdapter); 
            mListView.setOnItemClickListener(this); 
        } 
         
        @Override 
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
            mAdapter.changeImageVisable(view, position); 
        } 

            这里应该注意到与平常的不同,onItemClick方法里面调用了自定义ListAdapter里面的自定义changeImageViewVisable方法。
    看ListAdapter:


    [html] 
    public class ListAdapter extends BaseAdapter { 
        private Context mContext; 
        private View mLastView; 
        private int mLastPosition; 
         
        public ListAdapter(Context context) { 
            this.mContext = context; 
        } 
     
        @Override 
        public int getCount() { 
            return 8; 
        } 
     
        @Override 
        public Object getItem(int position) { 
            return null; 
        } 
     
        @Override 
        public long getItemId(int position) { 
            return 0; 
        } 
     
        @Override 
        public View getView(int position, View convertView, ViewGroup parent) { 
            Holder holder; 
            if(convertView == null ) { 
                LayoutInflater inflater = LayoutInflater.from(mContext); 
                convertView = inflater.inflate(R.layout.list_item, null); 
                holder =new Holder(); 
                holder.textView = (TextView)convertView.findViewById(R.id.textView); 
                holder.UEFAView = (ImageView)convertView.findViewById(R.id.image_uefa); 
                holder.mascotView = (ImageView)convertView.findViewById(R.id.image_mascot); 
                holder.hint = convertView.findViewById(R.id.hint_image); 
                convertView.setTag(holder); 
            } else { 
                holder = (Holder) convertView.getTag(); 
            } 
            holder.textView.setText("Hello,It is " + position); 
            return convertView; 
        } 
         
        class Holder { 
            TextView textView; 
            ImageView UEFAView; 
            ImageView mascotView; 
            View hint; 
        } 
         
        public void changeImageVisable(View view,int position) { 
            if(mLastView != null && mLastPosition != position ) { 
                Holder holder = (Holder) mLastView.getTag(); 
                switch(holder.hint.getVisibility()) { 
                case View.VISIBLE: 
                    holder.hint.setVisibility(View.GONE); 
                    break; 
                default : 
                    break; 
                } 
            } 
            mLastPosition = position; 
            mLastView = view; 
            Holder holder = (Holder) view.getTag(); 
            switch(holder.hint.getVisibility()) { 
            case View.GONE: 
                holder.hint.setVisibility(View.VISIBLE); 
                break; 
            case View.VISIBLE: 
                holder.hint.setVisibility(View.GONE); 
                break; 
            } 
        } 
     

           代码的最下端是changeImageVisable方法。(注意:在这个方法中,博客代码版本和提供下载代码版本中有细微差异,博客代码较下载代码性能更优,这也体现了Holder类的优越性,一定要好好用好Holder,应好好思考下,为什么这样写性能就更好些呢?欢迎留言讨论)。
            布局文件:

    main.xml:


    [html] 
    <?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:orientation="vertical" > 
     
        <TextView 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content" 
            android:text="ListView Test" /> 
        <ListView  
            android:id="@+id/list" 
            android:layout_width="wrap_content" 
            android:layout_height="fill_parent" 
            ></ListView> 
     
    </LinearLayout> 

    list_item.xml:

    [html]
    <?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout 
        xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:orientation="vertical" 
        > 
        <TextView  
            android:id="@+id/textView" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:text="Test" 
            android:textSize="20sp" 
            /> 
        <LinearLayout 
            android:id="@+id/hint_image" 
            android:layout_width="match_parent" 
            android:layout_height="wrap_content" 
            android:orientation="horizontal" 
            android:visibility="gone"> 
            <ImageView  
                android:id="@+id/image_uefa" 
                android:layout_width="0dp" 
                android:layout_height="60dp" 
                android:layout_weight="1" 
                android:src="/blog_article/@drawable/uefa/index.html" 
                /> 
            <ImageView  
                android:id="@+id/image_mascot" 
                android:layout_width="0dp" 
                android:layout_height="60dp" 
                android:layout_weight="1" 
                android:src="/blog_article/@drawable/mascot/index.html" 
                /> 
             
        </LinearLayout> 
         
    </LinearLayout> 
    作者:aomandeshangxiao


        
    最新技术文章:
    ▪Android开发之登录验证实例教程
    ▪Android开发之注册登录方法示例
    ▪Android获取手机SIM卡运营商信息的方法
    ▪Android实现将已发送的短信写入短信数据库的...
    ▪Android发送短信功能代码
    ▪Android根据电话号码获得联系人头像实例代码
    ▪Android中GPS定位的用法实例
    ▪Android实现退出时关闭所有Activity的方法
    编程技术>移动开发 iis7站长之家
    ▪Android录音应用实例教程
    ▪Android双击返回键退出程序的实现方法
    ▪Android实现侦听电池状态显示、电量及充电动...
    ▪Android获取当前已连接的wifi信号强度的方法
    ▪Android实现动态显示或隐藏密码输入框的内容
    ▪根据USER-AGENT判断手机类型并跳转到相应的app...
    ▪Android Touch事件分发过程详解
    ▪Android中实现为TextView添加多个可点击的文本
    ▪Android程序设计之AIDL实例详解
    ▪Android显式启动与隐式启动Activity的区别介绍
    ▪Android按钮单击事件的四种常用写法总结
    ▪Android消息处理机制Looper和Handler详解
    ▪Android实现Back功能代码片段总结
    ▪Android实用的代码片段 常用代码总结
    ▪Android实现弹出键盘的方法
    ▪Android中通过view方式获取当前Activity的屏幕截...
    ▪Android提高之自定义Menu(TabMenu)实现方法
    ▪Android提高之多方向抽屉实现方法
    ▪Android提高之MediaPlayer播放网络音频的实现方法...
    ▪Android提高之MediaPlayer播放网络视频的实现方法...
    ▪Android提高之手游转电视游戏的模拟操控
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3