Android 类中的公共函数不';我不能正常工作

Android 类中的公共函数不';我不能正常工作,android,class,oop,public-method,Android,Class,Oop,Public Method,我有一个“movie”类和一个公共函数getName(),但该函数不返回任何内容,logcat只是空白 public class movie { public String name45; int dvd_no ; public void addData( String name1 , int dvd_no1) { this.name45=name1 ; this.dvd_no = dvd_no1 ;

我有一个“movie”类和一个公共函数getName(),但该函数不返回任何内容,logcat只是空白

public class movie {

    public String name45;
    int dvd_no ;

    public void addData( String name1 , int dvd_no1) 
    {
                this.name45=name1 ;
            this.dvd_no = dvd_no1 ; 

            Log.d("constructor name1", name1);

            Log.d("constructor name45", name45);

    }

    public String getName()
    {
        return name45 ;
    }

}
这是一个使用此方法的活动-列表中始终有空白条目

public class MoviesList extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.movieslist);
        ListView lvAllMoviesList = (ListView)findViewById(R.id.allmovieslist);

          ArrayList<String> moviesNames = new ArrayList<String>();
            // go through list of members and compare name with given name
            for(movie movie : MovieReg_activity.movies) {
          String name =  movie.getName();
          Log.d("Movie Name list", movie.getName());
                    moviesNames.add(name);

            }


        ArrayAdapter<String> AllMovieList = new ArrayAdapter<String>(MoviesList.this,android.R.layout.simple_list_item_1, moviesNames);
        lvAllMoviesList.setAdapter(AllMovieList);
    }

}
公共类电影列表扩展活动{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
//TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(R.layout.movieslist);
ListView lvAllMoviesList=(ListView)findViewById(R.id.allmovieslist);
ArrayList moviesNames=新的ArrayList();
//浏览成员列表并将名称与给定名称进行比较
用于(电影:MovieReg_activity.movies){
字符串名称=movie.getName();
Log.d(“电影名称列表”,Movie.getName());
moviesNames.add(名称);
}
ArrayAdapter AllMovieList=新的ArrayAdapter(MoviesList.this,android.R.layout.simple\u list\u item\u 1,moviesNames);
lvAllMoviesList.setAdapter(AllMovieList);
}
}
生成对象并向其添加值的代码

public class MovieReg_activity extends Activity {

    public static List<movie> movies = new ArrayList<movie>();

    String movName ;
    int dvdNo ;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mov_reg_layout);
        EditText etmovie_name = (EditText)findViewById(R.id.etmovname);
        EditText etdvd_no = (EditText)findViewById(R.id.etdvds);
        Button btMovie_submit = (Button)findViewById(R.id.btmovsubmit);

        movName= etmovie_name.getText().toString();
    //  dvdNo = Integer.parseInt(etdvd_no.getText().toString()); // to string then to int :)

        btMovie_submit.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                int x=0 ;
                movie movie = new movie() ;
                movie.addData(movName, dvdNo);
                movies.add(x,movie );
                x++ ;
                int size =movies.size() ;
                Toast.makeText(MovieReg_activity.this, "no of movies added :"+size , Toast.LENGTH_SHORT).show();    

            }
        });

    }

}
public class MovieReg_活动扩展了活动{
public static List movies=new ArrayList();
字符串名称;
int dvdNo;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
//TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(R.layout.mov_reg_布局);
EditText etmovie_name=(EditText)findViewById(R.id.etmovname);
EditText etdvd_no=(EditText)findViewById(R.id.etdvd);
按钮btMovie\u submit=(按钮)findviewbyd(R.id.btmovesubmit);
movName=etmovie_name.getText().toString();
//dvdNo=Integer.parseInt(etdvd_no.getText().toString());//到字符串,然后到int:)
btMovie_submit.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
int x=0;
电影=新电影();
movie.addData(movName,dvdNo);
添加(x,电影);
x++;
int size=movies.size();
Toast.makeText(MovieReg_activity.this,“添加的电影数量:”+大小,Toast.LENGTH_SHORT.show();
}
});
}
}

如果要将日志的
标记
参数设置为第一个字符串,请尝试:

Log.d("DEBUG", "constructor name1 " + name1);
Log.d("DEBUG", "constructor name45 " + name45);

然后将logcat筛选器设置为“调试”

问题在于在MovieReg_活动中从用户获取数据

通过把这两条线

 EditText etmovie_name = (EditText)findViewById(R.id.etmovname);
 movName= etmovie_name.getText().toString();
在按钮监听器内部是这样的

public void onClick(View v) {
                int x=0 ;
                EditText etmovie_name = (EditText)findViewById(R.id.etmovname);
                movName= etmovie_name.getText().toString();
                movies.add(new movie(movName , dvdNo) );
                String name3= movie.getName() ;
                x++ ;
                int size =movies.size() ;
                Toast.makeText(MovieReg_activity.this, "no of movies added :"+size , Toast.LENGTH_SHORT).show();    

            }
        });

我们如何调试这个?我们不知道你是怎么用的。@DaveNewton抱歉。。我将编辑post@DaveNewton我想用logcat测试一下!这没用。你在哪里设置值?@DaveNewton好的,我会编辑它,但这并不能解释返回值的缺乏。尽管如此,它解释了为什么他的logcat是空的,并且很可能显示它正在输出一个值。