Кнопка не работает для AlexKolpa/fab-toolbar

Недавно я собирался импортировать библиотеку AlexKolpa/fab-toolbar, когда заметил, что анимация не работает, хотя я следил за всеми указаниями, приведенными в ссылке ниже:

https://github.com/AlexKolpa/fab-toolbar

Мой код выглядит следующим образом:

MainActivity

import android.animation.Animator;
import android.animation.AnimatorInflater;
import android.animation.ObjectAnimator;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.animation.LinearInterpolator;
import android.widget.Toast;

import com.github.alexkolpa.fabtoolbar.FabToolbar;


public class MainActivity extends ActionBarActivity implements  View.OnClickListener{


    private FabToolbar fabToolbar;

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

        fabToolbar = ((FabToolbar) findViewById(R.id.fab_toolbar));

        fabToolbar.setColor(getResources().getColor(R.color.blue));

//        findViewById(R.id.attach).setOnClickListener(this);
        findViewById(R.id.attach).setOnClickListener(new View.OnClickListener(){
            public void onClick(View v){
                Log.e("SOMETHING","SOMETHING");
                fabToolbar.show();
            }
        });

    }

    @Override
    public  void onClick(View v){
        Toast.makeText(this,"This is a button click!", Toast.LENGTH_SHORT).show();
        fabToolbar.hide();
    }

}

Ответы

Ответ 1

Я использую эту библиотеку, и она работает безупречно. Я также пробовал с вашим кодом на Moto X 5.1 и Genymotion 4.4, как в анимации работает.

Некоторая nitpicking, хотя:

  • В макете, когда вы используете FrameLayout, вам не нужны атрибуты:

    android:layout_alignParentBottom="true"  
    android:layout_alignParentLeft="true"  
    android:layout_alignParentStart="true" 
    
  • В вашем макете есть изображение и щелкните это изображение, которое вы снова делаете с помощью кнопки show. Я не думаю, что это было бы предполагаемым поведением. Даже если вы удалите эту часть, раскрытие будет работать нормально. Эта часть:

    findViewById(R.id.attach).setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Log.e("SOMETHING", "SOMETHING");
            fabToolbar.show();
        }
    });
    

Ответ 2

Я просто загрузил этот код...

Я обнаружил, что вы не знаете, как найти идентификатор...

поэтому просто следуйте этому, он будет работать

ImageView imageView;
    imageView= (ImageView) findViewById(R.id.event);
    imageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Toast.makeText(SampleActivity.this, "Clicked", Toast.LENGTH_SHORT).show();
        }
    });