Nmar93 Posted July 17, 2012 at 10:07 AM Report Share #468982 Posted July 17, 2012 at 10:07 AM Boas pessoal, Eu ao criar um novo textView, o que quer que seja nao consigo chama-lo no findviewbyId... Ja fui ver o R.java e encontra-se la tudo direito. Nao sei porque e que se lembrou de fazer isto. Ja verifiquei os imports (se tinha o pt.meupacote.qualquercoisa.R) e esta tudo direito. Alguem me sabe dizer como posso corrigir este erro chato ? --' Thanks ! Link to comment Share on other sites More sharing options...
nram Posted July 20, 2012 at 09:54 AM Report Share #469339 Posted July 20, 2012 at 09:54 AM Tens o Manifest correto? Link to comment Share on other sites More sharing options...
Nmar93 Posted July 20, 2012 at 10:15 AM Author Report Share #469341 Posted July 20, 2012 at 10:15 AM Honestamente ja deixei esse erro para tras mas obrigado pela resposta! Aproveito para, em vez de andar sempre a criar novos topicos, aproveito este mesmo para nao fazer tanto spam... É assim, eu estou a desenvolver uma aplicação que regista preços, mas agora adicionei a data. Tem uma checkbox que se premir aparece um outro botao, e esse mesmo botao abre um diálogo com a data actual (getInstance() ). Assim que premir no OK, o que aquilo faz e chamar uma função que faz appends dessa data colocada, e faço um setText dessa data numa TextView, que se mantem escondida. Eu ja andei para ali aos tombos com aquilo, o setText para a textview funciona na perfeiçao, mas assim que adicionei um campo novo na base de dados, que e a data (criei os seus atributos, o setData, getData, adicionei o seu adapter, epa tudo...) aquilo nao regista, ou estoura, diz que lamenta, mas foi abaixo inesperadamente, coisas dessas... Eu não faço mesmo a minima o que podera ser lol... Se souberem de alguma coisa, por favor! Eu estou aqui para ver lol 😉 Cumprimentos Link to comment Share on other sites More sharing options...
nram Posted July 20, 2012 at 10:20 AM Report Share #469346 Posted July 20, 2012 at 10:20 AM Continuo a achar que esse teu novo problema poderá ser no AndroidManifest. Vai ao site de developers do Android e espreita para que serve o AndroidManifest. Também sem código não te consigo dizer o que está mal. Link to comment Share on other sites More sharing options...
Nmar93 Posted July 20, 2012 at 10:26 AM Author Report Share #469348 Posted July 20, 2012 at 10:26 AM (edited) public class CombustivelDataBaseHandler extends SQLiteOpenHelper{ private static final int DATABASE_VERSION = 1; private static final String DATABASE_NAME = "CombustiveisManager"; private static final String TABLE_COMBUSTIVEIS = "Combustiveis"; private static final String KEY_ID = "id"; private static final String KEY_PRECO = "preco"; [b]private static final String KEY_DATA = "data";[/b] public CombustivelDataBaseHandler(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { String CREATE_COMBUSTIVEIS_TABLE = "CREATE TABLE " + TABLE_COMBUSTIVEIS +"(" + KEY_ID + " INTEGER PRIMARY KEY," + KEY_PRECO + " TEXT," +[b] KEY_DATA + " TEXT"[/b] + ")"; db.execSQL(CREATE_COMBUSTIVEIS_TABLE); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { //"Mata" a outra tabela se existir db.execSQL("DROP TABLE IF EXISTS " + TABLE_COMBUSTIVEIS); //cria as tabelas de novo onCreate(db); } public void addCombustivel(Combustivel Combustivel){ SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(KEY_PRECO, Combustivel.getPreco()); [b] values.put(KEY_DATA, Combustivel.getData()[/b]); db.insert(TABLE_COMBUSTIVEIS, null,values); db.close(); } public Combustivel getCombustiveis(int id){ SQLiteDatabase db = this.getReadableDatabase(); Cursor cursor = db.query(TABLE_COMBUSTIVEIS, new String[]{KEY_ID, KEY_PRECO[b], KEY_DATA[/b]} , KEY_ID + "=?", new String[] {String.valueOf(id)}, null, null, null, null); if (cursor != null) cursor.moveToFirst(); Combustivel Combustivel = new Combustivel(Integer.parseInt(cursor.getString(0)), cursor.getString(1), [b] cursor.getString(2)[/b]); return Combustivel; } public ArrayList<Combustivel> getAllCombustiveis(){ ArrayList<Combustivel> CombustivelList = new ArrayList<Combustivel>(); SQLiteDatabase db = this.getWritableDatabase(); Cursor cursor = db.query(TABLE_COMBUSTIVEIS, null, null, null, null, null, null); if(cursor.moveToFirst()){ do{ Combustivel Combustivel = new Combustivel(); Combustivel.setID(Integer.parseInt(cursor.getString(0))); Combustivel.setPreco(cursor.getString(1)); [b] Combustivel.setData(cursor.getString(2));[/b] CombustivelList.add(Combustivel); }while(cursor.moveToNext()); } return CombustivelList; } public int UpdateCombustivel(Combustivel Combustivel){ SQLiteDatabase db = this.getWritableDatabase(); ContentValues values = new ContentValues(); values.put(KEY_PRECO, Combustivel.getPreco()); [b] values.put(KEY_DATA, Combustivel.getData());[/b] return db.update(TABLE_COMBUSTIVEIS, values, KEY_ID + " = ?", new String[] {String.valueOf(Combustivel.getID())}); } public void DeleteCombustivel(Combustivel Combustivel){ SQLiteDatabase db = this.getWritableDatabase(); db.delete(TABLE_COMBUSTIVEIS, KEY_ID + " = ?", new String[] {String.valueOf(Combustivel.getID())}); } } Ca esta o meu handler todo. O que esta a negrito foi o que eu alterei. Claro que ainda alterei o meu adapter. Acrescentei mais uma textview no meu list_item, que e o que deve aparecer precisamente no listview quando for a listar aquilo que eu quero. Eu tenho a certeza absoluta que nao e do Manifest! Porque eu ja tinha feito um trabalho semelhante e ja verifiquei e ta tudo igual. Oh boa, bem o que esta a negrito, aquilo que alterei e o que tem as tags ... Edited July 20, 2012 at 10:27 AM by Nmar93 Link to comment Share on other sites More sharing options...
nram Posted July 21, 2012 at 07:14 PM Report Share #469556 Posted July 21, 2012 at 07:14 PM Verifica se tens permissões para o SQLite no Manifest: <activity android:name=".CombustivelDataBaseHandler" android:label="@string/app_name" > <intent-filter> <action android:name="com.ptandroid.tutorial.SQLVIEW" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> Link to comment Share on other sites More sharing options...
Nmar93 Posted July 25, 2012 at 10:07 AM Author Report Share #470216 Posted July 25, 2012 at 10:07 AM Lool obrigado pela resposta amigo, mas isto sinceramente comecou a dar e nem sei como! Mas agora levo uma pergunta mais simples, esta e daquelas que ate tenho alguma vergonha de perguntar, mas e necessario lool : D E simples: Obter a soma de uma certa coisa da tabela. Tenho dois atributos. Que e o preço e a data. Eu la faço essa treta toda no sqlite, ate tenho o codigo la em cima. Mas no adapter e onde eu chamo os meus texviews e chamo desta maneira: @Override public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if (v == null){ LayoutInflater vi = (LayoutInflater) getContext() .getSystemService(Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(R.layout.list_item_combustivel, null); } Combustivel Combustivel = combustivel.get(position); if (Combustivel != null){ TextView TvPreco = (TextView) v.findViewById(R.id.TvPrecoDoCombustivel); TextView TvData = (TextView) v.findViewById(R.id.TvDataDoCombustivel); if (Combustivel != null) { TvPreco.setText("Preço do Combustível: " + Combustivel.getPreco() + " €"); TvData.setText("Data (Ano/Mês/Dia): " + Combustivel.getData()); } } return v; } Isto e, como se sabe, o que preenche cada item da listview... Agora eu so quero e obter a soma de todos os preços no cabeçalho da listview. Eu criei uma textview em cima dela, po lado direito e faço assim no codigo mesmo da listagem: Combustivel combustivelTotal = new Combustivel(); String precoTotal = ""; precoTotal += combustivelTotal.getPreco(); tv_TotalCombustivel.setText("Total: " + precoTotal); Eu creio que e errado fazer o new Combustivel, mas la esta, sendo novo nisto faço erros basicos lol 😛 Cumprimentos! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now