小编Fre*_*mpe的帖子

添加LayoutParams时出现ClassCastException

我在使用哪个类中使用,设置当LayoutParams我的LinearLayout?以下两个不起作用:

  1. linLayout.setLayoutParams(new ViewGroup.LayoutParams(50,50));
  2. linLayout.setLayoutParams(new android.widget.LinearLayout.LayoutParams(50,50));

如果我首先得到params,改变它们并将它们设置回来它正在工作.所以我想我返回的Params继承自ViewGroup.LayoutParams ...

任何的想法?谢谢

android

6
推荐指数
1
解决办法
4901
查看次数

C++虚拟方法没有按需要调用

我被困了,已经尝试了很多来解决这个"虚拟"问题,所以我求求你帮助我,因为它可能是一个愚蠢的"受过训练的眼睛"可以在几秒钟内解决..

问题:当我在main中执行以下操作时:

PrologConnector swiProlog;
swiProlog = PrologConnector::connectorFactory(PrologConnector::swi,argv);
swiProlog.send("blabla");
Run Code Online (Sandbox Code Playgroud)

始终调用PrologConnector类的send方法,但不调用子类中的方法..您是否看到了问题?

谢谢您的帮助!!

这是代码:PrologConnector.h

class PrologConnector {
   virtual int send(char * cmd);
   virtual int init(char **argv);
   static PrologConnector connectorFactory(Prolog prolog, char ** argv);
};
Run Code Online (Sandbox Code Playgroud)

PrologConnector.cpp

int PrologConnector::send(char * argv) {
  std::cout << "not wanted"<<std::endl;
  return 0;
}


int PrologConnector::init(char **argv) {
  //TODO add implementation
  return 0;
}


PrologConnector PrologConnector::connectorFactory(Prolog prolog, char **argv) {
  if (prolog == swi) {
    SWIConnector sc;
    sc.init(argv);
    return sc;
  }

std::cout <<"Error in initialization!"<<std::endl;
PrologConnector pc;
return pc;
} …
Run Code Online (Sandbox Code Playgroud)

c++

3
推荐指数
1
解决办法
150
查看次数

标签 统计

android ×1

c++ ×1