这工程源码 不知为何闪退 aide版本3.2.171025
aide吧
全部回复
仅看楼主
level 1
Mr火吧 楼主
// Crime 类
package com.android.demo;
import java.util.*;
public class Crime
{
private UUID mId;
private String mTitle;
private Date mDate;
private boolean mSolved;
public Crime(){
mId = UUID.randomUUID();
mDate = new Date();
}
public UUID getId()
{
return mId;
}
public void setTitle(String title)
{
mTitle = title;
}
public String getTitle()
{
return mTitle;
}
public void setDate(Date date)
{
mDate = date;
}
public Date getDate()
{
return mDate;
}
public void setSolved(boolean solved)
{
mSolved = solved;
}
public boolean isSolved()
{
return mSolved;
}
}
//CrimeFragment 类
package com.android.demo;
import android.support.v4.app.Fragment;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.text.*;
import android.widget.CompoundButton.*;
public class CrimeFragment extends Fragment
{
private Crime mCrime;
private EditText mTitleField;
private Button mDateButton;
private CheckBox mSolvedCheckBox;
@Override
public void onCreate(Bundle savedInstanceState)
{
// TODO: Implement this method
super.onCreate(savedInstanceState);
mCrime = new Crime();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState){
// TODO: Implement this method
View v = inflater.inflate(R.layout.fragment_crime, container, false);
mTitleField = (EditText)v.findViewById(R.id.crime_title);
mTitleField.addTextChangedListener( new TextWatcher(){
@Override
public void beforeTextChanged(
CharSequence s, int start, int count, int after){
//This space intentionally left blank
}
@Override
public void onTextChanged(
CharSequence s, int start, int before, int count){
mCrime.setTitle(toString());
}
@Override
public void afterTextChanged(Editable s){
// This one too
}
});
mDateButton = (Button)v.findViewById(R.id.crime_date);
mDateButton.setText(mCrime.getDate().toString());
mDateButton.setEnabled(false);
mSolvedCheckBox = (CheckBox)v.findViewById(R.id.crime_solved);
mSolvedCheckBox.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked){
mCrime.setSolved(isChecked);
}
});
return v;
}
}
// MainActivity
package com.android.demo;
import android.os.*;
import android.support.v4.app.*;
import android.support.v7.app.*;
public class MainActivity extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_crime);
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentById(R.id.fragment_container);
if(fragment == null){
fragment = new CrimeFragment();
fm.beginTransaction()
.add(R.id.fragment_container, fragment)
.commit();
}
}
}
2018年08月26日 14点08分 1
level 1
Mr火吧 楼主
Fragment 类 如何注册
2018年08月26日 14点08分 2
level 14
有可能onCreateView的时候,mCrime还没new,猜的!
2018年08月27日 09点08分 3
level 13
Fragment fragment=fm.findFragmentById(R.id.省略)好像错了吧,不应该是CrimeFragment xxx=(CrimeFragment)fm.findFragmentById(R.id.省略)吗?而且下面都new CrimeFragment()了,还要findFragmentById干嘛?我乱说的,错了就当作没看见。[滑稽]
2018年08月27日 13点08分 4
都已经findFragmentById了,那fragment就不是null,那if(fragment==null)就不会执行了,那下面的又有什么用呢? 我乱说的,错了就当做没看见[滑稽]
2018年08月27日 13点08分
level 13
看起来没问题
2018年08月27日 15点08分 5
有log就好了
2018年08月27日 15点08分
level 1
Mr火吧 楼主
问题已解决 谢谢各位吧友的热心回复及帮助
!!! 另外问一下 constraintlayout 的jar包在哪里可以下载
2018年08月28日 06点08分 6
level 1
Mr火吧 楼主
原因是没有在注册当中把v7的风格添加进去
2018年08月28日 07点08分 7
1