2017-11-04 9 views
0

アプリにはタイプライター効果があります。手紙による手紙。文字が来たら3ボタンが表示されます。私は、ユーザータブの画面を2回テキストとボタンが表示される必要があります。私はonTouchListerを使うべきだと思いますが、私はそれを修正することはできません。助けてもらえますか?アドバイスをありがとう。画面を2回タップ

私は、このリンクをチェックし、何かを試してみました:ここhow to set onClick method with linearLayout?

はコードです:

public class Main2Activity extends AppCompatActivity{ 

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





    Button b = (Button) findViewById(R.id.button5); 
    b.setVisibility(View.GONE); 

    invisibleButton(b); 

    Button p = (Button) findViewById(R.id.button4); 
    p.setVisibility(View.GONE); 

    invisibleButton(p); 

    Button q = (Button) findViewById(R.id.button3); 
    q.setVisibility(View.GONE); 

    invisibleButton(q); 






    final TypeWriter tw = (TypeWriter) findViewById(R.id.tv); 

    tw.setText(""); 
    tw.SetCharacterDelay(40); 
    tw.animatedText("Ameliyathaneden çıkan doktor, dördüncü kattaki ofisine inmek için asansöre bindi. Yanında bir de hasta vardı. Asansör sekizinci kata gelip durdu ve kapıları açıldı. Asansör kapısının önünde küçük bir çocuk dikiliyordu.\n" + 
      "\n" + 
      "\"Aşağı mı iniyor?\" diye sordu çocuk. Doktor, çocuğu dikkatlice süzdü ve cevap verdi:\n" + 
      "\n" + 
      "-\"Hayır, yukarı çıkıyor.\" Düğmeye bastı ve asansörün kapıları kapandı. Yanındaki hasta, doktora dönüp sordu:\n" + 
      "\n" + 
      "-\"Neden çocuğun bizimle birlikte asansöre binmesine izin vermedin? Aşağı iniyorduk zaten.\" Doktor:\n" + 
      "\n" + 
      "-\"Çocuk çoktan ölmüştü. Geçtiğimiz gün lösemi yüzünden hayatını kaybetti"); 





    Button btn5 = (Button) findViewById(R.id.button3); 
    btn5.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent c = new Intent(Main2Activity.this,Main3Activity.class); 
      startActivity(c); 
     } 
    }); 

    LinearLayout layout = (LinearLayout) findViewById(R.id.layout); 
    layout.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      view.setVisibility(View.VISIBLE); 
     } 
    }); 

} 

private void invisibleButton(final View view){ 

    Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
     @Override 
     public void run() { 
      view.setVisibility(View.VISIBLE); 
     } 
    }, 1000 * 29); 

} 

    public void onBackPressed(){ 

    } 







} 

答えて

0

は、このコードを試していないが、hopfullyそれが役立つとご案内します。

public class Main2Activity extends AppCompatActivity{ 

private long lastClickMillis; 
private View lastViewClicked; 

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

    int countButton = 0; 
    Button btn = (Button) findViewById(R.id.button); 
    btn.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      if(lastClickMillis < System.currentMillis()-500 && lastViewClicked.getId() == v.getId()) 
       // Do whatever you want int the second tab 
      } 
      lastViewClicked = v; 
      lastClickMillis = System.currentMillis() 
     } 
    }); 
} 
+0

私はいくつかのエラーが発生しました。ここでは:http://tinypic.com/r/21npc2v/9 – Emre

+0

lastViewClicked.getId()== view.getId())静的メソッドから 'getId()'を参照することはできません - - lastViewClicked =ビュー;これを与える:表現が期待される – Emre

+0

ただそれを編集しました。最初に少しJavaを学んでください:) –

関連する問題