Witam was ponownie. Kolejny problem mam z edit textami. Mianowicie jak klikam w edit teksta to nie da się pisać. Daje wam kod już po wielu modyfikacjach. Wiele opcji już próbowałem ale dalej nic. Używam viewholder pattern bo czytałem, że nie ma problemu z odświeaniem, ale tak naprawdę będą tam tylko godziny to nie wiem czy zostać przy tym czy zwykłego holdera użyć?
package com.example.pawel.mysql;
import android.app.Activity;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
/**
* Created by Pawel on 2015-07-25.
*/
public class BA extends BaseAdapter {
private String[] data;
private String[] dane;
private String[] edit;
private Context ctx;
String afterTextChanged = "";
String beforeTextChanged = "";
String onTextChanged = "";
public BA(Context ctx, String[] importeddata, String[] nowedane, String[] edyt) {
this.ctx = ctx;
this.data = importeddata;
this.dane = nowedane;
this.edit = edyt;
}
public int getCount() {
return data.length;
//return data.length;
}
/*public int getDane() {
return dane.length;
}*/
public Object getItem(int position) {
return null;
}
public long getItemId(int position) {
return 0;
}
private class ViewHolderPattern {
TextView tekstwlayoucie;
TextView drugi;
EditText edytowanie;
}
public View getView(final int position, View convertView, ViewGroup parent) {
final ViewHolderPattern view_holder;
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.listatest, parent, false);
view_holder = new ViewHolderPattern();
view_holder.tekstwlayoucie = (TextView) convertView.findViewById(R.id.textView20);
view_holder.drugi = (TextView) convertView.findViewById(R.id.editText21);
view_holder.edytowanie = (EditText) convertView.findViewById(R.id.editText22) ;
convertView.setTag(view_holder);
} else {
view_holder = (ViewHolderPattern) convertView.getTag();
}
view_holder.tekstwlayoucie.setText(data[position]);
view_holder.drugi.setText(dane[position]);
view_holder.edytowanie.setText(edit[position]);
view_holder.edytowanie.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
beforeTextChanged = view_holder.edytowanie.getText().toString();
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
onTextChanged = view_holder.edytowanie.getText().toString();
}
@Override
public void afterTextChanged(Editable s) {
edit[position] = s.toString();
}
});
return convertView;
}
}
package com.example.pawel.mysql;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.CalendarView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import java.text.DateFormatSymbols;
import java.util.Calendar;
import java.util.Date;
public class intencjacal extends Activity {
public String a;
public String imie;
public String dzien;
public int miesiac;
public String rok;
public TextView tekst;
int month;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_intencjacal);
tekst = (TextView) findViewById(R.id.textView3);
ListView rozbudowanalista = (ListView) findViewById(R.id.listView2);
String[] przykladowedane = {"8:00", "9:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00"};
String[] przykladowedane2 = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11"};
String[] przykladowedane3 = {"jghj", "", "", "", "", "", "", "", "", "", ""};
BA adapterlisty = new BA(this, przykladowedane, przykladowedane2, przykladowedane3);
rozbudowanalista.setAdapter(adapterlisty);
Bundle bundle = getIntent().getExtras();
imie = bundle.getString("prze");
dzien = bundle.getString("dzien");
miesiac = bundle.getInt("miesiac");
rok = bundle.getString("rok");
//tost();
Calendar cal = Calendar.getInstance();
Date data = new Date(1235);
cal.setTime(data);
month = cal.get(Calendar.MONTH);
a = getMonth(miesiac);
wypisz();
}
public String getMonth(int month) {
return new DateFormatSymbols().getMonths()[month-1];
}
public void tost(){
Toast.makeText(getApplicationContext(), "To jest " + a, Toast.LENGTH_SHORT).show();
}
public void wypisz(){
tekst.setText("Dzisiaj jest " + dzien + "." + a + "." + rok);
//Log.e("odebrane", imie);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_intencjacal, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="15dp"
android:text="TextView" />
<TextView
android:id="@+id/editText21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="75dp"
android:text="TextView" />
<EditText
android:id="@+id/editText22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="75dp"
android:hint="TextView" />
</RelativeLayout>