2014-04-19 2 views
2

나는 Android의 내용을 배우려고 노력 중이며 몇 가지 진짜 도전 과제를 찾고 있습니다. ButtonTextView에 연결하고 ButtonTextView 값을 변경하려고합니다. 온라인에서 찾은 샘플 코드 중 일부를 사용하려고했지만 많은 오류가 발생하며 어떻게 처리해야하는지 잘 모릅니다. 네가 제공 할 수있는 도움을 주시면 감사하겠습니다.안드로이드의 버튼과 TextView

도움을 주셔서 감사합니다. 라인 25

: 라인 29에서

Multiple markers at this line 
- main cannot be resolved or is not a field 
- R cannot be resolved to a variable 

: 라인 (32)에

btn1 cannot be resolved or is not a field 

:

Multiple markers at this line 
- Syntax error on token ")", ; expected 
- Syntax error on token "(", ; expected 
- void is an invalid type for the variable onClick 
,745 : 라인 (34)에

Syntax error on token(s), misplaced construct(s) 

라인 36에서

: 여기에

txtVw1 cannot be resolved or is not a field 

와 내 코드입니다 : 다음

package com.demuro1.views; 
import android.R; 
import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.widget.Button; 
import android.widget.TextView; 

public class MainActivity extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_list_item); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

Button aBut = (Button) findViewById(R.id.btn1); 

public void changeText(){ 
    mButton.setOnClickListener(new View.OnClickListener { 
     public void onClick(View v) { 
      final TextView mTextView = (TextView) findViewById(R.id.txtVw1); 
      mTextView.setText("Some Text"); 
     } 
    }; 
} 

} 

하고 뷰에서 xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".MainActivity" > 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" > 

      <LinearLayout 
       android:layout_width="129dp" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:orientation="vertical" > 

       <TextView 
        android:id="@+id/txtVw1" 
        android:textSize="25sp" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="press button 1" /> 

       <Button 
        android:id="@+id/btn1" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center_vertical" 
        android:text="Button 1" 
        android:onClick="activateBtn1"/> 

      </LinearLayout> 

      <LinearLayout 
       android:layout_width="140dp" 
       android:layout_height="fill_parent" 
       android:layout_gravity="center_vertical" 
       android:orientation="vertical" > 

       <TextView 
        android:id="@+id/txtVw2" 
        android:textSize="25sp" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="press button 2" /> 

       <Button 
        android:id="@+id/btn2" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Button 2" 
        android:onClick="activateBtn2"/> 
        /> 
      </LinearLayout> 
     </LinearLayout> 

</LinearLayout> 

답변

2

를 사용하여 다음 코드

package com.demuro1.views; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.TextView; 

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    final Button aBut = (Button)findViewById(R.id.btn1); 
    Button bBut = (Button)findViewById(R.id.btn2); 
    final TextView aText = (TextView)findViewById(R.id.txtVw1); 
    final TextView bText = (TextView)findViewById(R.id.txtVw2); 

    aBut.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      aText.setText("You Clicked Button 1"); 

     } 
    }); 

    bBut.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      bText.setText("You Clicked Button 2"); 

     } 
    }); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

    } 
2
  1. 가져올 필요가 없습니다 android.R
  2. 주요 확인할 수 없습니다 또는 필드하지 않습니다 수 : 콘텐츠
  3. Syntax error on token(s), misplaced construct(s)을 설정 한 후 onCreate()에서 btn1를 초기화 : 버튼의 클릭을 설정 고해상도/메뉴 폴더에
  4. btn1 cannot be resolved or is not a field main.xml에라는 파일이 있는지 확인 onCreate
  5. txtVw1 cannot be resolved or is not a field 내부 청취자 :

    : 3
에서와 같은이처럼 MainActivity.java 변경

89,

관련 문제