如何在android中为url类型连接多个字符串

如何在android中为url类型连接多个字符串,android,android-intent,Android,Android Intent,我有一个开发一个应用程序来搜索和播放视频,在我的项目中,我面临一个难题,就是如何将搜索到的视频路径传递给视频播放活动。当我将视频的实际路径直接放入播放器活动时,它会播放视频,但如果我从意图中获取视频名称,然后将其转换为该视频的路径。它不会变糟的。我的程序没有显示任何错误 我无法获取我从第一个活动传递的意图数据。当我将该数据设置到文本视图中时,它显示为“null”。请帮助我恢复此问题 这是我的第一个活动 public class FirstActivity extends Activity {

我有一个开发一个应用程序来搜索和播放视频,在我的项目中,我面临一个难题,就是如何将搜索到的视频路径传递给视频播放活动。当我将视频的实际路径直接放入播放器活动时,它会播放视频,但如果我从意图中获取视频名称,然后将其转换为该视频的路径。它不会变糟的。我的程序没有显示任何错误 我无法获取我从第一个活动传递的意图数据。当我将该数据设置到文本视图中时,它显示为“null”。请帮助我恢复此问题

这是我的第一个活动

public class FirstActivity extends Activity  {

EditText et;
Button bt;
String filename;

public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.firstscreen);

     et = (EditText)findViewById(R.id.editText1);


     filename = et.getText().toString();

     bt = (Button)findViewById(R.id.button1);

     final Intent i = new Intent(this, MainActivity.class);
     i.putExtra("text_label", filename);



     bt.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub

             startActivity(i);

        }

     });
     }
}

这是我对视频播放器的第二项活动

public class MainActivity extends Activity implementsSurfaceHolder.Callback{

  MediaPlayer mediaPlayer;
  urfaceView surfaceView;
  SurfaceHolder surfaceHolder;
  boolean pausing = false;;

 String uriString;

 String stringPaths= "/sdcard/video/";
 String stringPath;

  /** Called when the activity is first created. */
 @Override
  public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);

    Button buttonPlayVideo = (Button)findViewById(R.id.playvideoplayer);
    Button buttonPauseVideo = (Button)findViewById(R.id.pausevideoplayer);

     Intent i = getIntent();
     uriString = i.getStringExtra("text_label");
      stringPath  = stringPaths+uriString+".3gp";

     getWindow().setFormat(PixelFormat.UNKNOWN);
    surfaceView = (SurfaceView)findViewById(R.id.surfaceview);
    surfaceHolder = surfaceView.getHolder();
    surfaceHolder.addCallback(this);
    surfaceHolder.setFixedSize(176, 300);
    surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    mediaPlayer = new MediaPlayer();

  buttonPlayVideo.setOnClickListener(new Button.OnClickListener(){

 @Override
  public void onClick(View v) {
   // TODO Auto-generated method stub
     pausing = false;

   if(mediaPlayer.isPlaying()){
    mediaPlayer.reset();
    }

   mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    mediaPlayer.setDisplay(surfaceHolder);

   try {
 mediaPlayer.setDataSource(stringPath);
  mediaPlayer.prepare();
    } catch (IllegalArgumentException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IllegalStateException e) {
    // TODO Auto-generated catch block
  e.printStackTrace();
    } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
    }

     mediaPlayer.start();


    }});

 buttonPauseVideo.setOnClickListener(new Button.OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(pausing){
 pausing = false;
 mediaPlayer.start();
 }
else{
 pausing = true;
     mediaPlayer.pause();
   }
    }});

   }



@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
// TODO Auto-generated method stub

 }

@Override
public void surfaceCreated(SurfaceHolder holder) {
// TODO Auto-generated method stub

}

    @Override
     public void surfaceDestroyed(SurfaceHolder holder) {
     // TODO Auto-generated method stub

    }
   }
这是我的问题 1.我是否正确地将意图传递给了第二个活动。 2.我应该如何将get intent数据与文件路径字符串连接起来

请帮帮我
这让我震惊。

问题在于onCreate方法-每次创建活动时都会创建您的意图,但不会显示给用户,因此TextView为空

尝试在onClick中添加额外的内容,在这里您还可以检查textView是否为空。它将是这样的:

 bt.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {
         filename = et.getText().toString();
         Intent i = new Intent(FirstActivity.this, MainActivity.class);
         i.putExtra("text_label", filename);
         startActivity(i);
    }
 });
您仍然可以在onCreate方法的作用域中创建intent,将其保留为final,但在onClick方法中分配额外的值


也考虑ET.GETTHEXTER()可以为NULL和ET.GETTrEXE()。toSTRIN()可以生成Null PoExtExtExchange,所以我宁愿把它提取到可编辑变量,并检查它是否不是NULL而不是空的。< /P>我没有看到任何明显的问题。您是否尝试注销并比较准备好的字符串与传入数据源调用的字符串?此外,你应该考虑看Android VooVIEW,它比使用SurvivIEWSI使用视频视图更容易一些,但是它不播放我的视频PLS,建议在我的APPI中使用视频视图的任何链接,很高兴你的问题现在无效:请接受答案!