Untitled
unknown
plain_text
7 months ago
2.8 kB
1
Indexable
Never
package edu.mob.lab04; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import android.os.Bundle; import android.view.View; import android.view.WindowManager; import android.view.animation.AnimationUtils; import android.view.animation.LayoutAnimationController; import android.widget.EditText; import android.widget.Toast; import java.util.HashMap; import java.util.Locale; public class MainActivity extends AppCompatActivity implements CRecyclerViewAdapter.IItemClickListener{ protected CDBMaterial dbMaterial; protected RecyclerView recyclerView; protected CRecyclerViewAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); dbMaterial = new CDBMaterial(this); dbMaterial.open(); findViewById(R.id.buttonAdd).setOnClickListener(v -> { dbMaterial.addMaterial( ((EditText)findViewById(R.id.editType)).getText().toString(), ((EditText)findViewById(R.id.editStandard)).getText().toString()); adapter.swapCursor(dbMaterial.getMaterials()); runLayoutAnimation(); }); adapter = new CRecyclerViewAdapter(this,dbMaterial.getMaterials()); recyclerView = findViewById(R.id.viewList); recyclerView.setHasFixedSize(true); recyclerView.setLayoutManager(new LinearLayoutManager(this)); recyclerView.setAdapter(adapter); adapter.setClickListener(this); int resId = R.anim.layout_animation_fall_down; LayoutAnimationController animation = AnimationUtils.loadLayoutAnimation(this, resId); recyclerView.setLayoutAnimation(animation); } private void runLayoutAnimation(){ final LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(this, R.anim.layout_animation_fall_down); recyclerView.setLayoutAnimation(controller); recyclerView.getAdapter().notifyDataSetChanged(); recyclerView.scheduleLayoutAnimation(); } @Override public void onItemClick(View view, int position) { HashMap<String, String> item = adapter.getItem(position); Toast.makeText(this, String.format(Locale.US, "IDX = %d, dane: %s, %s, %s", position, item.get(CDBHelper.TYPE_ID), item.get(CDBHelper.TYPE_TYPENAME), item.get(CDBHelper.TYPE_STANDARD)),Toast.LENGTH_SHORT).show(); } }