代码有错误,求大神帮忙指导!!!!

问题描述

代码有错误,求大神帮忙指导!!!!

public class ContactsFragment extends Fragment implements OnClickListener {

public static String hostIp;

private ExpandableListView userList;

private UserExpandableListAdapter adapter;
private List<String> strGroups; //所有一级菜单名称集合
private List<List<User>> children;

private TextView totalUser;
private Button refreshButton;
private TextView ipTextView;;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View contactsLayout = inflater.inflate(R.layout.contacts_layout,
            container, false);

// return contactsLayout;

if(!isWifiActive()){    //若wifi没有打开,提示
    Toast.makeText(getActivity(), R.string.no_wifi, Toast.LENGTH_LONG).show();
}

findViews();

strGroups = new ArrayList<String>(); //所有一级菜单名称集合
children = new ArrayList<List<User>>();

// netThreadHelper = NetThreadHelper.newInstance();
BaseFragment.netThreadHelper.connectSocket(); //开始监听数据
BaseFragment.netThreadHelper.noticeOnline(); //广播上线

adapter = new UserExpandableListAdapter(getActivity(), strGroups, children);
userList.setAdapter(adapter);

refreshButton.setOnClickListener(this);
refreshViews();
return contactsLayout;

}

@Override
public void finish() {
// TODO Auto-generated method stub
super.finish();
BaseFragment.netThreadHelper.noticeOffline(); //通知下线
BaseFragment.netThreadHelper.disconnectSocket(); //停止监听

}

public void onViewCreated(View view, Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onViewCreated(view, savedInstanceState);
totalUser =(TextView)view.findViewById(R.id.totalUser);
userList = (ExpandableListView)view.findViewById(R.id.userlist);
refreshButton = (Button) view.findViewById(R.id.refresh);
ipTextView = (TextView) view.findViewById(R.id.mymood);
hostIp = getLocalIpAddress();
ipTextView.setText(hostIp); //设置IP
}

@Override
public void processMessage(Message msg) {
// TODO Auto-generated method stub
switch(msg.what){
case IpMessageConst.IPMSG_BR_ENTRY:
case IpMessageConst.IPMSG_BR_EXIT:
case IpMessageConst.IPMSG_ANSENTRY:
case IpMessageConst.IPMSG_SENDMSG:
refreshViews();
break;
}
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK)
exit();
return true;
}

//更新数据和UI显示
private void refreshViews(){

//清空数据
strGroups.clear();
children.clear();

Map<String,User> currentUsers = new HashMap<String, User>();
currentUsers.putAll(BaseFragment.netThreadHelper.getUsers());
Queue<ChatMessage> msgQueue = BaseFragment.netThreadHelper.getReceiveMsgQueue();
Map<String, Integer> ip2Msg = new HashMap<String, Integer>();   //IP地址与未收消息个数的map
//遍历消息队列,填充ip2Msg
Iterator<ChatMessage> it = msgQueue.iterator();
while(it.hasNext()){
    ChatMessage chatMsg = it.next();
    String ip = chatMsg.getSenderIp();  //得到消息发送者IP
    Integer tempInt = ip2Msg.get(ip);
    if(tempInt == null){    //若map中没有IP对应的消息个数,则把IP添加进去,值为1
        ip2Msg.put(ip, 1);
    }else{  //若已经有对应ip,则将其值加一
        ip2Msg.put(ip, ip2Msg.get(ip)+1);
    }
}

//遍历currentUsers,更新strGroups和children
Iterator<String> iterator = currentUsers.keySet().iterator();
while (iterator.hasNext()) {
    User user = currentUsers.get(iterator.next());
    //设置每个在线用户对应的未收消息个数
    if(ip2Msg.get(user.getIp()) == null){
        user.setMsgCount(0);
    }else{
        user.setMsgCount(ip2Msg.get(user.getIp()));
    }

    String groupName = user.getGroupName();
    int index = strGroups.indexOf(groupName);
    if(index == -1){ //没有相应分组,则添加分组,并添加对应child
        strGroups.add(groupName);

// List> childData = new ArrayList>();
// Map child = new HashMap();
// child.put("userName", user.getUserName());
// childData.add(child);
// children.add(childData);

        List<User> childData = new ArrayList<User>();
        childData.add(user);
        children.add(childData);
    }else{  //已存在分组,则将对应child添加到相对应分组中

// Map child = new HashMap();
// child.put("userName", user.getUserName());
// children.get(index).add(child);
children.get(index).add(user);
}

}

//更新groups

// for(int i = 0; i < strGroups.size(); i++){
// Map groupMap = new HashMap();
// groupMap.put("group", strGroups.get(i));
// groups.add(groupMap);
// }

adapter.notifyDataSetChanged(); //更新ExpandableListView

String countStr = "当前在线" + currentUsers.size() +"个用户";
totalUser.setText(countStr);    //更新TextView

}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.equals(refreshButton)){ //若是刷新
BaseFragment.netThreadHelper.refreshUsers();
refreshViews();
}

}

//判断wifi是否打开
public boolean isWifiActive(){
ConnectivityManager mConnectivity = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if(mConnectivity != null){
NetworkInfo[] infos = mConnectivity.getAllNetworkInfo();

    if(infos != null){
        for(NetworkInfo ni: infos){
            if("WIFI".equals(ni.getTypeName()) && ni.isConnected())
                return true;
        }
    }
}

return false;

}

//得到本机IP地址
public String getLocalIpAddress(){
try{
Enumeration en = NetworkInterface.getNetworkInterfaces();
while(en.hasMoreElements()){
NetworkInterface nif = en.nextElement();
Enumeration enumIpAddr = nif.getInetAddresses();
while(enumIpAddr.hasMoreElements()){
InetAddress mInetAddress = enumIpAddr.nextElement();
if(!mInetAddress.isLoopbackAddress() && InetAddressUtils.isIPv4Address(mInetAddress.getHostAddress())){
return mInetAddress.getHostAddress().toString();
}
}
}
}catch(SocketException ex){
Log.e("MyFeiGeActivity", "获取本地IP地址失败");
}

return null;

}

//获取本机MAC地址
public String getLocalMacAddress(){
WifiManager wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
return info.getMacAddress();
}

}

求大神指点迷津!!!

解决方案

以后问问题的时候,不要把一笸箩代码全部粘贴进来。别人都懒得看,最好的先把错误发出来。别人如果知道就直接回答了。如果不知道,你再把代码贴出来。

解决方案二:

解决方案三:

解决方案四:

java编程错误 求大神指导

解决方案五:

解决方案六:

解决方案七:

求大神指点,谢谢啦

解决方案八:

鼠标放在有红线的地方,会有一个浮床显示错误信息
你这发上来的是“产生错误的代码”,完全没有任何“错误信息”

解决方案九:

都不说什么错误,也没个错误的信息,最好把报什么错说清楚,别人才好帮你解答

时间: 2025-01-15 16:08:54

代码有错误,求大神帮忙指导!!!!的相关文章

android 类qq空间图片查看器。出现好多错误 求大神帮忙。小女涉入甚浅。

问题描述 android 类qq空间图片查看器.出现好多错误 求大神帮忙.小女涉入甚浅. 11-20 11:26:39.629: E/AndroidRuntime(1136): FATAL EXCEPTION: main 11-20 11:26:39.629: E/AndroidRuntime(1136): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.desktop/co

Myeclipse把tomcat 6.0换成 tomcat 7.0出现这种错误求大神帮忙

问题描述 Myeclipse把tomcat 6.0换成 tomcat 7.0出现这种错误求大神帮忙 org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/eco]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase

c++-C++代码问题,求大神帮忙看看代码有什么问题?

问题描述 C++代码问题,求大神帮忙看看代码有什么问题? #include "stdafx.h" #include #include #include #define M_PI 3.14159265358979323846 int main(int argc, char* argv[]) { int tableSize=512; double sinTable[]={0}; for(int n = 0; n < (tableSize + 1); n++) { sinTable[n

服务器-clustrmaps代码问题,求大神帮忙看一下

问题描述 clustrmaps代码问题,求大神帮忙看一下 在clustrmaps上生成了一段代码 但是放到服务器上只能生成 但是如果将代码放到w3school模拟就能正确运行 有没有大神帮忙看一下~~~ 解决方案 代码是 ``` 解决方案二: 代码是 ``` 解决方案三: 代码是 ``` 解决方案四: script type="text/javascript" id="clustrmaps" src="//cdn.clustrmaps.com/map_v2

xcode链接错误-求大神帮忙看看这个错误

问题描述 求大神帮忙看看这个错误 0 0x105dbf342 __assert_rtn + 144 1 0x105dfa2c6 archive::File::makeObjectFileForMember(archive::File::Entry const*) const + 1138 2 0x105df9c74 archive::File::justInTimeforEachAtom(char const*, ld::File::AtomHandler&) const + 122 3 0x1

spring注解无法读取配置文件的属性,时间可以读取,求大神帮忙看看

问题描述 spring注解无法读取配置文件的属性,时间可以读取,求大神帮忙看看 //运用注解读取配置文件 @Component @ComponentScan @Configuration @PropertySource({ "classpath:/info.properties" }) public class PropertiesResolve { private static Logger logger = Logger.getLogger(PropertiesResolve.cl

struct-自己编的c语言建立二叉树的代码,运行时出错了,自己找不到错误,求大神帮忙,指点,急.

问题描述 自己编的c语言建立二叉树的代码,运行时出错了,自己找不到错误,求大神帮忙,指点,急. 自己编的c语言建立二叉树的代码,运行时出错了,自己找不到错误,求大神帮忙,指点,急. #include #include typedef struct tnode Tnode; struct tnode { Tnode *left; Tnode *right; int data; }; Tnode *new_tnode(int data) { Tnode *new = malloc(sizeof(Tn

代码没标红, 但是只要运行就出现这样的错误信息, 求大神帮忙!!!

问题描述 代码没标红, 但是只要运行就出现这样的错误信息, 求大神帮忙!!! 解决方案 获取视图没有获取到,对象为null 解决方案二: view没加载,可能layout名字写错了 解决方案三: 空指针很好找,你按住ctrl点这个layout没过去就是没加载,问题就在这,都不用debug 解决方案四: 空指针,mygridview第70行

代码有错误,求大神帮忙指点迷津!!!!

问题描述 代码有错误,求大神帮忙指点迷津!!!! public class ChatFragment extends BaseFragment implements OnClickListenerReceiveMsgListener{ // private NetThreadHelper netThreadHelper; // private ImageView chat_item_head; //头像 private TextView chat_name; //名字及IP private Te